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); } }