2017-04-20 2 views
0

시나리오에 관해 도움이 필요합니다. 즉, "42258258.2300"과 같은 값을 가져 와서 "42,258,258.00"값으로 변환해야합니다.CSV 파일의 값을 읽는 방법

그리고 다시이 값이 다운로드 된 CSV 파일에 있는지 확인해야합니다.

아래 코드를 사용하여 CSV 파일에서 읽었지만 출력을 얻지 못했습니다. 친절하게 도와주세요.

String strFile = "outputfile.csv"; 
FileInputStream fstream = new FileInputStream(strFile); 
DataInputStream in = new DataInputStream(fstream); 
BufferedReader br = new BufferedReader(new InputStreamReader(in)); 
String strLine; 
while ((strLine = br.readLine()) != null) { 
String ss = "$42,699,561.00"; 
if(strLine.contains(ss)){ 
System.out.println ("Success"); } 
} 
in.close(); 
+0

CSV 파일의 몇 가지 예제 라인을 제공 할 수 있습니까? 파일에서 통화가 어떻게 형식화되는지 알지 못하면 왜 .contains()가 히트를 찾지 못했는지 말할 수 없습니다. – DiabolicWords

+0

질문이 확실하지 않습니다. _outputfile.csv_이란 무엇입니까? 무엇이 포함되어 있습니까? "42258258.2300", "42,258,258.00"또는 "42,699,561.00"? 코드는 csv 파일의 모든 행을 읽고 그 중 하나에 'ss'문자열이 포함될 것으로 예상됩니다. 즉, 줄 중 하나에 "$ 42,699,561.00"이 포함되어야합니다. –

+0

그리고 "성공"이 없다는 사실은 분명히 CSV 파일에 찾고있는 달러 문자열이 포함되어 있지 않다는 것을 의미합니다. –

답변

0

strLine을 인쇄하면 어떻게됩니까? 정말로 문자열을 받고 있습니까?

이 코드는 나를

public void getFileInformation(){ 
     String strFile = "/Users/myUser/Documents/outputfile.csv"; 
     BufferedReader br = null; 
     String strLine = ""; 
     String ss = "$42,699,561.00";   
     try { 
      br = new BufferedReader(new FileReader(strFile));     
      while ((strLine= br.readLine()) != null) { 
       if(strLine.contains(ss)){ 
        System.out.println ("Success"); 
       }else{ 
        System.out.println (strLine); 
       } 
      } 
     } catch (FileNotFoundException e) { 
      e.printStackTrace(); 
     } catch (IOException e) { 
      e.printStackTrace(); 
     } finally { 
      if (br != null) { 
       try { 
        br.close(); 
       } catch (IOException e) { 
        e.printStackTrace(); 
       } 
      } 
     } 
    } 

그러나 내용 "$ 42,699,561.00"작동; 파일에 실제로 있어야합니다.

+0

안녕하세요 @Jose Pedroza는 스크립트를 실행했지만 "$ 42,699,561.00"값이있는 다른 문장도 인쇄합니다. 하지만 "$"로 실행하면 "성공"이됩니다. 나는 왜 당신이 나를 도울 수 있는지 모른다. –

+0

미안, 나는 주말 내내 외박했다. 의심 스럽다면 나는 지금 당신을 돕기 위해 노력할 것입니다. ""$ "로 실행할 때"성공 "을 줄 때" "$" 파일이나 문자열에? –

+0

괜찮습니다. 파일에서 "$ 42,699,561.00"값을 확인하고 있지만 실행되지 않았습니다. ( –

관련 문제