2011-07-16 5 views
1

3GB 근처에 큰 테스트 파일 —을 만들어야합니다. 그래서 나는 처음의 문자열 "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 또는 일부 메모리 메소드 (램 드라이브)를 볼 수 있습니다.