2011-10-26 2 views
0

조건 문자열로 종료합니다 : 내가 예를 들어, 태그 문자열의 내용을 인쇄 할어떻게 시작 파일에서 특정 라인을 인쇄하고이 같은 .txt 파일이

[abc] 
There is 
a lot of 
contents here 
[abc] 

[def] 
Here are 
many other 
contents 
[def] 

[ghi] 
and bunch of 
contents here too 
[ghi] 

를 : [abc] 행을 인쇄하지 않고 [abc]와 [abc] 사이의 모든 내용을 인쇄하십시오. 어떻게 그걸 성취 할 수 있니?

+0

모든 태그 라인'['과 다른 내용 라인'['로 시작되지로 시작하는 경우 '['로 시작하는 모든 라인을 걸러 낸다. 정규식이'^ [. * $'이어야합니다.] 여러 줄 패턴 –

+0

에서 원하는 것을 얻었습니까? – Mead3000

답변

1

입력에 bufferedreader 및 파일 판독기를 사용하십시오. 입력 행을 반복하고 해당 조건에 string.equals (string 메소드)를 사용하십시오. 작성하지 코드 간단한에서 행할 당신

if (readline) // for opening tag 
    while (readline) 
     printline 
     if (readline) // for closing tag 
      break; 
1

에있는 동안 부울 플래그

boolean printing=false; 
while((line=in.readLine())!=null){ 
    if(line.startsWith("[abc]"){ 
     printing=!printing; 
    }else if (printing){ 
     System.out.println(line); 
    } 
} 
+0

그들을 위해 일하지 말아라. – Mead3000

관련 문제