3

次のコードでは:

fileInputStream = new FileInputStream(new File(pathToOurFile) );
bytesAvailable = fileInputStream.available();
bufferSize = Math.min(bytesAvailable, maxBufferSize);
buffer = new byte[bufferSize];
bytesRead = fileInputStream.read(buffer, 0, bufferSize);

印刷バッファは、ファイルにあるものではなく、ランダムな値を与えています。buffersizeファイルのサイズを正しく計算しています。
ワットが間違っていると言えますか?

4

1 に答える 1

1

これを試して..

 private void ReadFile(AssetManager manager, String sourceFileName,
        String destinationFileName) throws IOException {

    // Read file from AccessManager
    InputStream inputStream = manager.open(sourceFileName);
    OutputStream outputStream = new FileOutputStream(destinationFileName);
    Log.d("-->", "src: " + sourceFileName);
    Log.d("-->", "Des: " + destinationFileName);
    byte[] buffer = new byte[3072];
    int length;
    while ((length = inputStream.read(buffer)) > 0) {

        outputStream.write(buffer, 0, length);

    }

    outputStream.flush();
    outputStream.close();
    inputStream.close();

    outputStream = null;
    inputStream = null;
}
于 2011-09-30T06:27:38.990 に答える