過去幾個小時我一直試圖自己做這件事,而且有點失落。Java新手。使用上下文和openFileInput從文件中讀取問題
我想要做的就是打開一個文件,讀取並顯示它到控制檯;而已。
我使用eclipse爲android 2.3.3進行開發。
我已經嘗試了使用一堆不同的方法,我在這裏找到的代碼和其他網站上。以下是我現在有怎樣的全稱爲:
在OnCreate函數:
setContentView(new TestMap(this));
的testMap類:
TestMap(Context context){
super(context);
// might need to be on the panel class
loadTileFile("worldonelayout.txt", context);
在同一類
:
private void loadTileFile (String filename, Context context){
FileInputStream input = null;
InputStreamReader reader = null;
char[] inputBuffer = new char[256];
String data = null;
try {
input = context.openFileInput("worldonelayout.txt");
reader = new InputStreamReader(input);
reader.read(inputBuffer);
data = new String(inputBuffer);
System.out.println(data);
Toast.makeText(context, "Text read", Toast.LENGTH_SHORT).show();
} catch (Exception e) {
e.printStackTrace();
Toast.makeText(context, "Text not read", Toast.LENGTH_SHORT).show();
} finally {
try {
input.close();
reader.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
此代碼不起作用。它總是遇到異常。
「/data/data/com.name.somethingiremoved/files/worldonelayout.txt(沒有這樣的文件或目錄)」。
這發生在第一個CATCH。 BTW我的文件在根目錄:Documents\Eclipse\workspace\project\worldonelayout.txt
。我還可以在左側的瀏覽器中看到該文件
從我在這裏和其他網站上看到的情況來看,這與從Activity派生的Context類有關嗎?我不想將這些代碼放在與我的活動相同的類中。有沒有辦法解決這個問題?
如果您需要更多內容,請告訴我。
拋出了什麼異常? – 2012-04-05 18:41:53
@OllieC /data/data/com.name.somethingiremoved/files/worldonelayout.txt(沒有這樣的文件或目錄)。第一個CATCH。 BTW我的文件在根目錄下:Documents \ Eclipse \ workspace \ project \ worldonelayout.txt。我也可以在左側的瀏覽器中看到該文件 – maffo 2012-04-05 18:45:39
你可以在android中使用system.out.println嗎?顯示你的logcat錯誤也是一個好主意 – Stagleton 2012-04-05 18:52:17