public class CountLetters
{
public static void main (String[] args)
{
TextReader inFile = new TextReader("sample.txt");
// use positions 1..26 to count letters
int[] letters = new int[27];
char c1;
int loop, total = 0;
c1 = inFile.readChar();
while (!inFile.eof())
{
if ('A' <= c1 && c1 <= 'Z') // if c1 is upper case
c1 = (char)(c1 + 32); // change c1 to lower case
if ('a' <= c1 && c1 <= 'z') // if we have a letter...
{
letters[c1 - 96]++; // if c1 == 'a', 97-96 = 1, etc.
total++;
}
c1 = inFile.readChar();
}
System.out.println("Count letters");
System.out.println();
c1 = 'a';
for (loop = 1; loop <= 26; loop++)
{
System.out.println(c1 + " : " + letters[loop]);
c1++;
}
System.out.println();
System.out.println("Total letters = " + total);
}
}
Back to Lesson 15 Examples
Back to Java Main Page