簡體   English   中英

將文本文件的整個行逐行存儲在數組中(不是逐字;包含空格)

[英]Store entire line of text file in array line by line (not word by word; include spaces)

我正在編寫一個程序,其中文本文件的內容將逐行存儲在數組中。 我可以使用它,但是一次只能存儲一個單詞。

  try ( Scanner fin = new Scanner ( new File("toDoItems.txt") ); ) 
    {
    for (int i = 0; i < listCount && fin.hasNext(); i++) 
          {
          textItem[i] = fin.next();
          }
    }

listCount變量從頂部開始存儲從文件中讀取多少行。 相反,它告訴它要讀取多少個單詞。 在不知道每一行可能有多長時間的情況下,如何將整個行讀入數組?

我將數組的大小設置為比我需要的大得多,並且我正在使用以下內容一次僅顯示一行內容,並且僅顯示正在使用的內容(這樣可以避免一長串的空值)

    for (int i = 0; i < listCount; i++) 
          {
              String temp = textItem[i];
              System.out.println(temp);
          }

(為此,我僅限於數組。沒有數組列表或列表)

注意:我能找到的大多數類似問題僅是試圖存儲包含單個單詞的行。

fin.hasNext()更改為fin.hasNextLine()並將fin.next()更改為fin.nextLine()

為了將來參考,您可以在官方文檔中找到此類信息

Java8,你可以使用限制由線產生的文件列表內容行:

 List<String> contents = Files.lines(Paths.get("toDoItems.txt")).limit(listCount).collect(Collectors.toList());

fin.next()將通過token獲取下一個輸入。 它應該是fin.nextLine()

暫無
暫無

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

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