2

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で機能させるために何が必要かわかりません。バイトをファイルに書き込む例はたくさんありますが、それらを元に戻す方法を説明する例は見つかりません。

曖昧な点があればコメントしてください。必要に応じてさらに説明します。

4

1 に答える 1

3

コンテキストのプライベート ストレージにファイルを書き込んでいるが、そこから読み戻していない可能性がありますか? でファイルを読んでみてくださいopenFileInput(filename)

于 2012-03-01T01:53:23.240 に答える