ファイルを別のファイルに置き換えるときに奇妙な問題があります。 このコードだけでなく、初めて作品:既存のファイルを交換してください、長さの問題
test
その後、私は長い文字列で、「テスト」という文字列を置き換え、もう一度コードを実行します:
String fileContent = "test";
File file = new File(Environment.getExternalStorageDirectory() + "/myApp/text.txt");
file.getParentFile().mkdirs();
if (file.exists())
file.delete();
try {
FileOutputStream fileOutputStream = new FileOutputStream(filePath);
BufferedOutputStream bufferedOutputStream = new BufferedOutputStream(fileOutputStream);
bufferedOutputStream.write(fileContent.getBytes());
bufferedOutputStream.close();
fileOutputStream.close();
} catch (Exception exception) {
exception.printStackTrace();
}
をそれはこのコンテンツのファイルを作成します
String fileContent = "admiral";
それは古いファイルを削除し、新しいものを作成し、それだけで4つの最初の文字の書き込み:
を私は短い文字列でコンテンツを交換する場合admi
最後に、(「こと」、それが破損したファイルを作成:
be\00\00
をしかし、私は手動でファイルを削除した場合、それは...非常に奇妙な動作します。 ..
解決済み:問題は、geditのキャッシュでした! :s、あなたの助けをすべての方法thxによって! :)
'write'の後に' bufferedOutputStream.flush() 'を追加しようとしましたか? –