2017-12-21 42 views
-1

OpenCSV로 CSV 파일을 구문 분석하려고합니다. 새 CSVReader를 만드는 동안 오류가 발생했습니다. "CSVReader에서 CSVReader()를 (Java.io.FileReader, char)에 적용 할 수 없습니다." 공식 페이지에서이 예제를 복사했습니다. 리더를 사용할 수없는 이유는 무엇입니까? CSV 파일에 액세스해야합니다.Java : OpenCSV로 CSV 파일 구문 분석

package csv; 

import java.io.FileReader; 
import java.io.IOException; 
import java.util.ArrayList; 
import java.util.List; 

public class CSVReader { 
    public static void main(String[] args) throws IOException { 

     String fileName = "storici/eurusd.csv"; 

     CSVReader reader = new CSVReader(new FileReader(fileName), ','); 

     List<CSVData> records = new ArrayList<CSVData>(); 

     // read line by line 
     String[] record = null; 

     while ((record = reader.readNext()) != null) { 
      CSVData data = new CSVData(); 
      data.setTime(record[0]); 
      data.setOpen(record[1]); 
      data.setHigh(record[2]); 
      data.setLow(record[3]); 
      data.setClose(record[4]); 
      data.setVolume(record[5]); 
      records.add(data); 
     } 

     System.out.println(records); 

     reader.close(); 
    } 
} 

답변

1

여기서 문제는 OpenCSV 클래스와 충돌하는 클래스 CSVReader를 호출했기 때문입니다. 클래스 이름을 바꾼 다음 올바른 클래스를 가져 오는 것이 좋습니다.

+0

거룩한 암소! 이것은 여러 부분의 코드를 복사 할 때 발생합니다 ... 감사합니다! – Simon

+0

당신을 진심으로 환영합니다. – PillHead

+0

@Simon 클래스를 바꾸는 것이 효과적 일지 모르지만 다른 패키지의 클래스를 사용할 때 패키지 이름으로'CSVReader' 접두사 접두사를 붙이면됩니다 :'opencsv.CSVReader reader = new opencsv.CSVReader (.. 예를 들면. – Nathan