2013-07-12 3 views
3

BufferedReader를 사용하여 텍스트 파일을 읽을 수 있습니까? 그렇다면 버퍼링 된 리더가 읽는 동안 동시에 읽은 행을 PrintWriter를 사용하여 다른 txt 파일에도 저장합니까?BufferedReader가 txt 파일에 씁니까?

+0

예, 가능합니다 .. 대답으로 입력해야합니까? –

+0

두 개의'FileChannel'을 사용하고'.transfer {From, To}()'를 사용하는 것이 왜 좋을까요? – fge

+0

@fge 음 사용법에 대한 예제를 제공해 주시겠습니까? –

답변

4

, 그것만큼 간단하다 :

final Path src = Paths.get(...); 
final Path dst = Paths.get(...); 
Files.copy(src, dst); 

당신이 라인으로 라인을 읽고 다시 쓰기, src을 잡아하려는 경우와 위와 dst 같은 방법으로, 다음을 수행하십시오

final BufferedReader reader; 
final BufferedWriter writer; 
String line; 

try (
    reader = Files.newBufferedReader(src, StandardCharsets.UTF_8); 
    writer = Files.newBufferedWriter(dst, StandardCharsets.UTF_8); 
) { 
    while ((line = reader.readLine()) != null) { 
     doSomethingWith(line); 
     writer.write(line); 
     // must do this: .readLine() will have stripped line endings 
     writer.newLine(); 
    } 
} 
+0

괜찮습니다. 고마워요. :) –

0

예. BufferedReader을 연 다음 PrintWriter을 만듭니다. 작가에게 글을 쓸 때 스트림에서 읽을 수 있습니다.

3

직접 귀하의 질문에 대답하려면, 당신이 할 수있는

을, 그리고 당신도 그렇게 할 BufferedWriter로 사용할 수 있습니다. 당신이 자바 7을 사용하여 직접 다른에 하나 개의 파일을 복사하려면

BufferedReader br = new BufferedReader(new FileReader(new File("Filepath"))); 
BufferedWriter bw = new BufferedWriter(new FileWriter(new File("Filepath"))); 
String l; 
while((l=br.readLine())!=null){ 

    ... do stuff ... 

    bw.write("what you did"); 

} 

bw.close();