读/写Byte数组Android

时间:2012-03-01 01:38:02

标签: java android writetofile

尝试将byte []写入文件,我认为该文件正常工作

   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();
    }
}

然后在应用程序中我需要将字节读回字节[]

       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中运行。有很多将文件写入文件的例子,但我找不到任何解释如何让它们回来的例子。

如果有任何疑问,请发表评论,如果需要,我会解释更多。

1 个答案:

答案 0 :(得分:3)

是不是您正在将文件写入上下文的私有存储但不从那里读回来?尝试使用openFileInput(filename)

阅读文件