2013-03-15 2 views
1
import java.io.*; 

공용 클래스 BufferedReaders {의 BufferedReader

public static void main(String args[]) { 
    try { 
     BufferedWriter bw = new BufferedWriter(new FileWriter("e:/test/exercise/BufferedWriter.txt")); 
     java.io.BufferedReader bd = new BufferedReader(new FileReader("e:/test/exercise/BufferedWriter.txt")); // The constructor BufferedReader(FileReader) is undefined.***Why?Thanks for your answers!!!*** 
     String s = null; 
     for (int i = 0; i < 10; i++) { 
     s = String.valueOf(Math.random()); 
     bw.write(s); 
     bw.newLine(); 
     } 
     bw.flush(); 
     while ((s = bd.readLine()) != null) { 
     System.out.print(s); 
     } 
     bw.close(); 
     bd.close(); 
    } catch (IOException e) { 
     e.printStackTrace(); 
    } 
    }       
} 

생성자의 BufferedReader에 대한 몇 가지 문제 (을 FileReader가) 정의되지 않습니다. 하지만 난 내 책에서 코드를 찾아 테스트 해 봤는데 이유는 모르겠다. 응답 해 주셔서 감사합니다!

+0

감사합니다! 동일 하지만요. 내 PC에서 잘 실행됩니다. 내 PC에서 잘못 실행됩니다. 다른 컴퓨터에서 실행하고 다시 실행합니다. 감사합니다. – Koala

답변

0

아니요, 코드는 문제가 없습니다. BufferedReaderReader이 필요하며, 그 중 FileReader은 1입니다. InputStreamReader에서 시작하여 Reader에 있습니다.

나는 이클립스에 해당 코드를 입력하고 그것을 잘 실행 : 사실 (내 데비안 상자에는 e: 드라이브가 없다 특히 이후)이 파일을 열 수 없습니다하지만 아니에요 이외의

java.io.FileNotFoundException: e:/test/exercise/BufferedWriter.txt (No such file or directory) 
    at java.io.FileOutputStream.open(Native Method) 
    at java.io.FileOutputStream.<init>(FileOutputStream.java:209) 
    at java.io.FileOutputStream.<init>(FileOutputStream.java:99) 
    at java.io.FileWriter.<init>(FileWriter.java:63) 
    at Test.main(Test.java:6) 

글쎄, 구문 에러

따라서 과 다릅니다.

java.io.BufferedReader bd = new java.io.BufferedReader ... 
0
을 : 당신이뿐만 아니라 new 후 정규화 된 형식을 사용하여 해당 테스트 할 수 - 즉, 전체 코드가 아니라면 그것은 당신이 다른 BufferedReader 유형 (그러나 가능성 또는 사악한) 자바 하나 방해가 있는지, 가능

이클립스에 코드를 복사하고 일부 import 문을 작성하면 작동합니다.

import java.io.BufferedReader; 
import java.io.BufferedWriter; 
import java.io.FileReader; 
import java.io.FileWriter; 
import java.io.IOException; 

public class BufferedReaders {  
public static void main(String args[]) { 
    try { 
     BufferedWriter bw = new BufferedWriter(new FileWriter("e:/test/exercise/BufferedWriter.txt")); 
     java.io.BufferedReader bd = new BufferedReader(new FileReader("e:/test/exercise/BufferedWriter.txt")); 
     String s = null; 
     for (int i = 0; i < 10; i++) { 
     s = String.valueOf(Math.random()); 
     bw.write(s); 
     bw.newLine(); 
     } 
     bw.flush(); 
     while ((s = bd.readLine()) != null) { 
     System.out.print(s); 
     } 
     bw.close(); 
     bd.close(); 
    } catch (IOException e) { 
     e.printStackTrace(); 
    } 
}       
} 
+0

당신은 답안에 약간의 맥락을 제공 할 수 있습니다. 미래의 독자들은이 상황에서뿐만 아니라 문제에 그것을 적용하는 법을 배울 수 있습니다. 또한 http://stackoverflow.com/help/how-to-answer를 통해 읽어 보는 것이 좋습니다. 해당 링크를 참조로 사용하면 대답의 가시성과 명확성을 크게 높일 수 있습니다. – Newd