2017-12-05 6 views
0

사용자가 텍스트 파일을 선택합니다. 파일을 가져 와서 1 줄을 개별 단어로 나눕니다. 그런 다음 if 문을 사용하여 단어 중 하나가 "the"단어와 같은지 확인합니다. 첫 줄에는 "the"라는 단어가 있지만 거기에는 그곳에 있다는 것을 말하지 않습니다. 다른 "the"는 처음부터 아닙니다. (예, 이것이 엉망이라는 것을 알고 있습니다. 그러나 그것은 내가 작업하고있는 것입니다. A의 짧은 컴파일 가능한 및 실행 가능한 프로그램 -텍스트 파일을 한 번에 한 줄씩 읽고 단어를 배열로 나눕니다. Java

try { 
    BufferedReader br = new BufferedReader(new FileReader(test)); 
    //String text = ""; 
    String line = br.readLine(); 

    //while (line != null) 
    if(line != null) { 
     for(int j = 0; j < 20; j++) //loops through first 20 lines { 
      if(line != null) { 
       //text += line; 
       String[] words = line.toLowerCase().split(" "); 
       for(int i = 0; i < words.length; i++){//loops array of split up words 
        if(words[i].equals("the")) { 
         System.out.println("Found T H E"); 
        } else { 
         System.out.println("Didn't find the"); 
         System.out.println(words[i]); 
        } 
        line = br.readLine(); 
       } 
      } else { 
       System.out.println(""); 
      } 
     } 
    } else { 
     System.out.println("It's null"); 
    } 
    br.close(); 
} catch (Exception ex) { 
    System.err.println("Error" + ex); 
} 
+1

가장 유효한 [mcve]을 생성하는 라인을

line = br.readLine(); 

외부 이동 시도 짧은 텍스트 파일은 우리 질문에 게시 ** ** 우리 ** 컴파일되지 않고 실행될 수 있으며 이는 우리 문제를 보여줍니다. 또 다른 권장 사항 : 디버거를 사용하여 실제로 테스트중인 String을 확인하십시오. 구두점을 청소하고 있습니까? –

답변

2

) 순간 루프

for(int i = 0; i < words.length; i++){