我寫了一個程序,讀取字母a,e,s和t以及空格在txt文件中出現的次數,它當前工作正常,但只能讀取txt文件的第一行。如何讓我的程序讀取txt文件中的所有行,然後輸出這些字母被使用的次數?感謝您的時間和幫助。java txt文件讀取程序,只讀取txt文件的第一行
import java.util.Scanner;
import java.io.FileNotFoundException;
public class Count
{
public static void main (String[] args) throws FileNotFoundException {
String phrase; // a string of characters
int countBlank; // the number of blanks (spaces) in the phrase
int length; // the length of the phrase
char ch; // an individual character in the string
int countA;
int countE;
int countS;
int countT;
java.io.File file = new java.io.File("counting.txt");
Scanner inFile = new Scanner (file);
Scanner scan = new Scanner(System.in);
phrase = inFile.nextLine();
length = phrase.length();
// Initialize counts
while (true)
{
if (phrase.equalsIgnoreCase("quit"))
break;
else
{
countBlank = 0;
countA = 0;
countE = 0;
countS = 0;
countT = 0;
for (int i = 0; i < length; i++)
{
if (phrase.charAt(i) == ' ')
countBlank++;
ch = phrase.charAt(i);
switch (ch)
{
case 'a':
case 'A': countA++;
break;
case 'e':
case 'E': countE++;
break;
case 's':
case 'S': countS++;
break;
case 't':
case 'T': countT++;
break;
}
}
System.out.println();
System.out.println ("Number of blank spaces: " + countBlank);
System.out.println();
System.out.println ("Number of A's: " + countA);
System.out.println();
System.out.println ("Number of E's: " + countE);
System.out.println();
System.out.println ("Number of S's: " + countS);
System.out.println();
System.out.println ("Number of T's: " + countT);
break;
}
}
}
}
我對程序進行了這些更改,它仍然返回相同的內容。 – user3188576
它適合我。你的文件是怎樣的? – Christian
txt文件或java文件? – user3188576