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