[英]Infile Outputting only 1 line
我控制讀取數據文件的外循環是不正確的,有人可以向我解釋如何獲得循環以打印整個數據文件,而不僅僅是打印數據文件中的第一個單詞嗎?
public static void display() throws IOException, FileNotFoundException {
Scanner infile = new Scanner(new FileReader("G:\\DataFileDS.txt"));
StringTokenizer token = new StringTokenizer(infile.nextLine());
StringElement str = new StringElement();
while(token.hasMoreTokens()) {
str.setString(token.nextToken());
stringList.insert(str);
}
stringList.print();
int n = stringList.listSize();
for(int i = 0; i < n - 1; ++i) {
System.out.println(stringList.retrieveAt(i) + " " + stringList.retrieveAt(i+1));
}
}
我猜想while循環會首先運行,一旦完成,它將輸出值。 然后,您的for循環僅運行一次,因為listsize可能是一個。 嘗試打印列表大小。 由於我無法測試此代碼。
可能是這樣的:
public static void Display()throws IOException, FileNotFoundException
{
Scanner infile = new Scanner(new FileReader("G:\\DataFileDS.txt"));
StringTokenizer token = new StringTokenizer(infile.nextLine());
StringElement str = new StringElement();
while(token.hasMoreTokens())
{
str.setString(token.nextToken());
stringList.insert(str);
int n = stringList.listSize();
for(int i=0; i<n-1; i=i+1)
{
System.out.println(stringList.retrieveAt(i) + " " + stringList.retrieveAt(i+1));
}
stringList.print();
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.