2013-11-26 33 views
0

我有一個java項目,它將讀取一個txt文件並處理它。如何在可執行文件jar中使用.txt,.xml和.properties文件?

爲了生產目的,我需要生成一個包含這個txt文件的可執行jar文件。

我使用的代碼,如:

BufferedReader br = new BufferedReader(new FileReader("src/txt_src/sample.txt")); 

我的罐子包含txt_src/sample.txt的,但不能使用它。相反,如果我放置一個src/txt_src/sample.txt結構的src目錄,jar工作。

由Eclipse直接生成會更好。

在此先感謝!

+0

您需要根據當前運行的背景下取得的位置,並根據這些內容你您正在尋找的文件的路徑。 srry我不記得如何得到它 – Gustavo

回答

2

將文件視爲資源並將路徑作爲包層次結構。

http://docs.oracle.com/javase/7/docs/api/java/lang/Class.html#getResourceAsStream%28java.lang.String%29

然後,您可以採取的InputStream和在被包裹在一個BufferedReader的InputStreamReader包裹。如果你需要定義編碼,你應該把它包裝在BufferedInputStream中。

new BufferedReader(new InputStreamReader(new BufferedInputStream(this.getResourceAsStream("myPackage/myFile.txt")), "UTF-8")); 
+0

它使用getResouce()並將參數更改爲「txt_src/sample.txt」 – zchholmes

+0

好吧,很高興你得到它的工作。 – Dodd10x

0

把你的文件在你的項目的資產文件夾,並使用它們:

InputStream stream = null; 
try { 
    stream = getAssets().open("sample.txt"); 
} 
catch (IOException e) { 
    e.printStackTrace(); 
} 
相關問題