簡體   English   中英

Java FileInputStream找不到文件(LibGDX)

[英]Java FileInputStream can't find file (LibGDX)

所以我有這個課:

http://pastebin.com/EwXFwuZz

以及這個目錄樹: http : //s14.directupload.net/file/d/3099/uskko5mo_png.htm

我正在與此項目一起使用LibGDX框架。 這基本上是我的問題:

我有一個文件,其中包含“塊”中的級別信息。 每行是一個塊。 我想每行讀取文件行。 不幸的是,LibGDX的內置FileHandling系統不支持逐行讀取,因此我認為應該堅持使用庫存Java。

但是我收到此“ FileNotFound”異常:

java.io.FileNotFoundException: ./assets/data/lvls/example.txt (No such file or directory)
    at java.io.FileInputStream.open(Native Method)
    at java.io.FileInputStream.<init>(FileInputStream.java:120)
    at java.io.FileReader.<init>(FileReader.java:55)
    at gemini.cute.game.xvii.database.LevelReader.<init>(LevelReader.java:49)
    at gemini.cute.game.xvii.core.MainLauncher.create(MainLauncher.java:40)
    at com.badlogic.gdx.backends.lwjgl.LwjglApplication.mainLoop(LwjglApplication.java:124)
    at com.badlogic.gdx.backends.lwjgl.LwjglApplication$1.run(LwjglApplication.java:107)

使用LibGDX,可以找到該文件,但將其讀入一個單一的巨大字符串。 由於某種原因,即使路徑相同(甚至從根目錄開始),也找不到該文件。

對於不熟悉LibGDX的人,我正在上層的“ CuteGameXVII”項目中進行編碼,但為了進行編譯,我在“ CuteGameXVII-desktop”中運行了“ Main”。 資產文件夾是通過eclipse鏈接的,迄今為止可以用於其他資源。

我在這里想念什么超級明顯嗎? 如果是這樣,請幫助我:P提前謝謝。

如果您從路徑$DIR的目錄運行Java程序,則輸入文件應位於$DIR/assets/data/lvls/example.txt 根據收到的異常,此位置不存在輸入文件。

我建議您首先嘗試在代碼中使用輸入文件的絕對路徑。 然后,找出它的相對路徑。

我也遇到了這個問題。 為了使用LibDGX從資產目錄中讀取文件,您必須使用LibGDX方法替換:

new FileInputStream("SomeFile.txt")

通過

Gdx.files.internal("SomeFile.txt").read()

假設“ someFile.txt”位於您的資產根文件夾中。

暫無
暫無

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

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