1
試圖寫一個文件,我認爲一個byte []在應用後工作正常讀取/寫入字節數組的Android
String filename = "BF.dat";
public void WriteByteToFile(byte[] mybytes, String filename){
try {
FileOutputStream FOS = openFileOutput(filename, MODE_PRIVATE);
FOS.write(mybytes);
FOS.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
然後我需要讀取的字節回一個byte []
String filename = "BF.dat"
public byte[] ReadByteFromFile (String filename){
byte[] mybytes = null;
try {
File file = new File(filename);
FileInputStream FIS = new FileInputStream(file);
mybytes = new byte[(int)file.length()];
FIS.read(mybytes);
FIS.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return mybytes;
}
的字節沒有從該回來了,(它的工作原理在正常的Java - 但不是與Android APK),我不知道我需要什麼,使其在Android的工作。有很多寫文件字節的例子,但我找不到任何解釋如何讓它們回來的例子。
如果有什麼是模糊的請評論,我會解釋更多,如果需要。
讀取文件是否傳遞給'ReadByteFromFile(...)'方法的'filename'完全限定? – Squonk 2012-03-01 01:50:55
完全符合您的意思是相同的? String filename =「BF.dat」;兩者都是一樣的。 (我會添加到我的問題) – 2012-03-01 01:57:35
請參閱dbryson的答案。你需要在你的案例中使用'openFileInput'。我完全合格的意思就是'/ data/data /.../.../ BF.dat'。如果你檢查你的logcat,你可能會得到一個'FileNotFoundException'記錄在你的代碼上面。 – Squonk 2012-03-01 01:59:59