4 回答

TA貢獻1831條經(jīng)驗 獲得超9個贊
與某些評論者所說的相反,您嘗試使用的方法確實存在。有問題的方法需要一個必需的第一個參數(shù),然后是可變數(shù)量的參數(shù),由varargs 構造實現(xiàn),這意味著零個或多個參數(shù)。
但它只能從 Java 11 開始使用。您需要檢查您的 Java 版本。
另一種方法是您將掃描儀與另一個參數(shù)一起使用:
new Scanner(new File(D:/test.txt), StandardCharsets.UTF_8)
; 或者new Scanner(Paths.get(D:/test.txt), StandardCharsets.UTF_8)
構造函數(shù)分別拋出 aFileNotFoundException
和 an IOException
。確保您處理它或將其傳播給調(diào)用者。
注意:一個快速的本地測試告訴我這實際上對我有用。因此,如果您的代碼仍然拋出 a FileNoteFoundException
,我的猜測是文件或文件名存在其他問題。

TA貢獻1719條經(jīng)驗 獲得超6個贊
該Path.of()
方法在 JDK 11 中添加,需要一個URI
as 參數(shù),而不是一個String
. 例如,
Scanner input = new Scanner(Path.of(new URI("file:///D:/test.txt")), StandardCharsets.UTF_8);
或者你可以簡單地使用new Scanner(File)
,正如其他答案所說。

TA貢獻1794條經(jīng)驗 獲得超8個贊
嘗試如下初始化您的掃描儀,您不需要路徑:
Scanner input = new Scanner(new File("D:\\test.txt") , StandardCharsets.UTF_8);
添加回答
舉報