2011-07-16 26 views
1

大きなテストファイル—を3 GB近くに作成する必要があります。だから私は開始と文字列 "1" —のために、パフォーマンスと正確性をチェックするように書こうとします。Java BufferedWriterのパフォーマンス

FileWriter fstream = new FileWriter("c:/out.txt"); 
BufferedWriter out = new BufferedWriter(fstream,10000000); 
for (int i = 0; i < 1000000000; i++) { 
    //out.write(Integer.toString(1)); 
    out.write("1"); 
    out.newLine(); 
} 
out.close(); 

将来のバージョンでは、乱数を書く必要があります。今、私のコンピューターは3分26秒かかります。 バッファーのサイズを変更しても効果がないようです。 書き込み処理を高速化できますか?ありがとう。

+0

ファイルは文字列/文字データで構成する必要がありますか?ここでは、必要でない可能性のあるテキストエンコーディングレイヤーを使用しています。あなたのファイルに書き込もうとしているデータのフォーマットについてもっと詳しく記入してください。 – seh

答えて

4

3GBは3072MBです。書き込み速度が25MBpsの場合は、2分後にもう少し時間がかかります。別のコンピュータで試してみて、結果を比較してください。おそらく高速ではないハードドライブです。

+0

ありがとう、私はそれを忘れる。 – user710818

1

書き込みを高速化するためにRAIDアレイを調べることをお勧めします。多くのデータを書き込むのは遅いプロセスです。また、SSDやいくつかのメモリメソッド(RAMドライブ)を見ることができます。

関連する問題