我製作了一個Java applet /應用程序遊戲,應該保存用戶可以創建到本地機器的級別。 我說小程序/應用程序,因爲它可以作爲應用程序或作爲小程序運行。 目前我使用這個寫入文件:用Java存儲本地機器的保存文件的位置
BufferedWriter bf = new BufferedWriter(new FileWriter("Circles/levels/level.txt"));
for (int i = 0; i < lines.size(); i++) {
bf.write(lines.get(i));
bf.newLine();
}
線與線的ArrayList寫入文件。
和
FileReader fr = new FileReader("Circles/levels/level.txt");
BufferedReader bf = new BufferedReader(fr);
lines = new ArrayList<String>();
while (true) {
String line = bf.readLine();
if (line == null) {
break;
}
lines.add(line);
}
bf.close();
讀取文件。那些被圍繞在try/catch循環中,我只是展示了我必須要做的。
這可以正常工作,但它似乎是在不同操作系統上完全不同的位置,並且應用程序與Applet存儲在不同的位置。
我想要一個方法來獲得一個地方的絕對路徑來保存水平,不管在哪裏運行java程序都不會改變,而且如果將它作爲應用程序運行並且作爲小程序。在所有操作系統上(linux,windows,mac)都可以做這項工作。
我沒有你的問題的答案,但更容易和優雅的方式來編寫/讀取文件的級別將是[序列化](http://www.tutorialspoint.com/java/java_serialization.htm )。只是一個提示,讓您的生活更輕鬆:) – Aaron