2017-10-16 1 views
-2

내 코드가 txt 파일의 첫 줄을 건너 뛰는 이유는 아닙니다. 때문에 첫 번째 라인을 읽고 가서 파일 리더에게 첫 번째 if(br.readLine() == null){이 곳의Java : 왜 텍스트 판독기가 두 번째 줄의 텍스트 읽기를 시작하는지 알지 못합니다.

InputStream input = event.getFile().getInputstream(); 
      BufferedReader br = new BufferedReader(new InputStreamReader(input)); 
      String red; 
      int brojac = 0; 
      String content = ""; 
      String billNumber = "840000000096362741"; 
      if(br.readLine() == null){ 
       throw new WrongFileException("Format fajla nije dobar!"); 
      } 
      while ((red = br.readLine()) != null) { 
       content = red; 
       treasuryStatHeader.setTshStatFileContent(content); 
       System.out.println(content.substring(0, 20)); 
       brojac++; 
       System.out.println(brojac + " BROJACCCCCCC"); 
       if (brojac == 1) { 
       . 
       . 
       . 
       } else {...} 
+0

우리는 텍스트 파일을 볼 수 있을까요? – user6248190

+0

br.readLine()을 한 번 호출하기 전에 인쇄하지 않을 것입니다. –

+0

InputStream을 닫고 있습니까? – El0din

답변

2

이것은이 코드는 처음에는 잘 작동하고 있었기 때문에 혼란 I'am는 ... 여기 코드입니다 다음 줄로. 할 수있는 일은 null 체크를 while 루프로 옮기는 것입니다.

boolean firstLine = true; 
while (red = br.readLine()) { 
    if(firstline && red == null) { 
    throw new WrongFileException("Format fajla nije dobar!"); 
    } 
    firstLine = false; 
    if(null == red) { 
    continue; 
    } 
    content = red; 
    treasuryStatHeader.setTshStatFileContent(content); 
    // [...] 
} 
+0

네, 그게 문제였습니다. 나는 그것을 보지 못했다고는 믿을 수 없다. 감사! – NikolaU

관련 문제