簡體   English   中英

無法在 Java 中找到和讀取文件

[英]Cannot find and read file in Java

我對 Java 完全陌生,我正在使用別人的代碼來讀取二進制文件,但該文件無法打開。 我在 Windows 10 下的 Eclipse 中運行代碼,該文件名為 bookDeepDist.dat 我已將其放在項目文件夾中。 我也試過(沒有成功)的完整路徑名是 C:\\Users\\Alan\\eclipse-workspace\\readDatabase\\bookDeepDist.dat

失敗的代碼是:

public void openBook() throws IOException {

    file = getClass().getResourceAsStream(BOOKPATH[bookNr]);
    if (file == null)
        throw (new IOException("Could not open File "+BOOKPATH[bookNr]));
}

錯誤信息是:無法打開文件 bookDeepDist.dat

所以它似乎試圖打開正確的文件。 任何人都可以給我任何想法可能會出錯嗎?

問題是, getResourceAsStream() 在運行的 Java 程序的類路徑中查找。 這就是為什么當您將文件放在項目文件夾中時它可以工作的原因。 您想要的是程序類路徑之外的文件流。

代替

file = getClass().getResourceAsStream(BOOKPATH[bookNr]);

嘗試使用

file = new FileInputStream(BOOKPATH[bookNr]);

暫無
暫無

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

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