簡體   English   中英

Java掃描程序計數文件中的行

[英]Java scanner count lines in file

我有一個問題,我試圖創建一個應用程序來計算文件中符號的所有出現...掃描方法“nextLine”停在一個空行...是否有辦法讓它繼續前進,直到它到達真正的文件結束?

簡而言之:我可以在文件中獲得REAL行數嗎?

先感謝您!

你可以使用一個循環:

int count = 0;
while (scanner.hasNextLine()) {
    count++;
    scanner.nextLine();
}

count將包含行數。

所以我一直在研究這個問題。 我最近一直在反對它,而我正在為我正在上課的Java編寫一個行計數程序。

掃描器類執行此操作的原因是因為scanner.next()和scanner.nextLine()返回標記,它們由分隔符分隔。 默認情況下,分隔符是空格 所以發生的事情是,當你調用scanner.hasNext()或scanner.hasNextLine()時,它會查看下一個分隔符后是否有令牌。 當文件以換行符結尾時,之后沒有令牌,因此hasNext()和hasNextLine()返回false。

據我所知,要做你想做的事,你需要計算分隔符的數量,這在Martinus的答案中得到了更好的處理。 另見AFinkelstein的回答

請參閱Scanner.hasNextLine() ,您應該在循環條件中使用它。 如果它能更好地滿足您的需求,還有一個Scanner.hasNext()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM