-3
static void parse(String fileName) throws IOException{
    FileReader fileReader=new FileReader((fileName));
    BufferedReader bufferedReader = new BufferedReader(fileReader);
    StringBuilder stringBuilder=new StringBuilder();
    String string;
    do{
        string=bufferedReader.readLine();
        stringBuilder.append(string);
        }while(!string.equals(null));
    System.out.println(stringBuilder.toString());


}

StringBuilder を使用して、ファイル全体を文字列に読み込もうとします。しかし、while ループでエラーが発生します。なぜ?

4

2 に答える 2

2

以下は、ループがどのように見えるかです

while((string = bufferedReader.readLine()) != null) {                
    stringBuilder.append(string);
}

お使いのバージョンの問題は、string.equals(null)最終的に NPE になることです。また、常に引数String.equals()に対して false を返すことに注意してください。null

于 2012-11-19T02:39:02.277 に答える