如何使用java使用头读取csv文件?

如何使用java使用头读取csv文件?,java,csv,Java,Csv,我有一个csv文件,其中包含5个标题字段,如field1、field2、field3、field4和field5。 该文件包含不同用户的此标头的数据。 某些列可能包含空值,因为只有三列是强制的 我想通过指定列的标题来读取列,就像我指定了field1和field3,然后只读取这些列的值一样 我尝试了opencsv来做这件事,并读取了opencsv的所有函数。 我也试过CSVReader 这是我的密码: public void startScanFile(){ String mydemofile=p

我有一个csv文件,其中包含5个标题字段,如field1、field2、field3、field4和field5。 该文件包含不同用户的此标头的数据。 某些列可能包含空值,因为只有三列是强制的

我想通过指定列的标题来读取列,就像我指定了field1和field3,然后只读取这些列的值一样

我尝试了opencsv来做这件事,并读取了opencsv的所有函数。 我也试过CSVReader

这是我的密码:

public void startScanFile(){
String mydemofile=pathtofile;
BufferedReader br =null;
try {
  System.out.println("\nEnter the column number that contains ip : ");
  br = new BufferedReader(new InputStreamReader(System.in));
  ipcolumn = Integer.parseInt(br.readLine());
      System.out.println("\nEnter the column number that contains username : ");
  br = new BufferedReader(new InputStreamReader(System.in));
  usercolumn = Integer.parseInt(br.readLine());
  System.out.println("\n Enter the column number that contains password");
  br = new BufferedReader(new InputStreamReader(System.in));
  passcolumn = Integer.parseInt(br.readLine());
    }catch(Exception e){
}
try {
    CSVReader csvReader = new CSVReader(new FileReader(mydemofile));
    String[] row;
    while ((row = csvReader.readNext())!=null){
    System.out.println("Col1 is is : " + row[1]);
    System.out.println("Col3 is : " + row[3]);
    System.out.println("Col4 is : " + row[4]);
}
} catch (FileNotFoundException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
} catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
}
}


如何仅读取指定标题的值?

如果使用
csvreader
可以使用此选项

line.get("field3");


试试或。

我可以推荐以下csv库。很好。检查下面的url,其中包含如何使用标题获取csv数据的示例,您还可以验证数据

http://supercsv.sourceforge.net/examples_reading.html

到目前为止你得到了什么?或者至少向我们展示文件内容的示例,请阅读@RafaEl我使用opencsv api及其函数readAll来读取csv并从结果中提取信息。