如何从Java中的Excel中读取特定的行?

我试图编写一个程序,使我可以检索存储在Excel文件中的人员的详细信息。 我已决定使用电子邮件作为识别每个人的方式,因为这些都是独一无二的。 我的程序似乎不工作,有人可以帮我吗?

import java.io.BufferedReader; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.IOException; public class Reader { public static void main(String[] args) { String csvFile = "Clients.csv"; BufferedReader br = null; String line = ""; String cvsSplitBy = ","; try { br = new BufferedReader(new FileReader(csvFile)); while ((line = br.readLine()) != null) { if(((br.readLine().split(cvsSplitBy))[2]).equals("email@gmail.com")){ String[] data = line.split(cvsSplitBy); System.out.println("First Name: "+data[0]+" Last Name: "+data[1]+" Activity Level: "+data[7]); } } } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } finally { if (br != null) { try { br.close(); } catch (IOException e) { e.printStackTrace(); } } } } } 

这里是我更正的代码,解决了我的问题:

  String csvFile = "Clients.csv"; BufferedReader br = null; String line = ""; String cvsSplitBy = ","; try { br = new BufferedReader(new FileReader(csvFile)); while ((line = br.readLine()) != null) { String[] data = line.split(cvsSplitBy); if(data[2].equals("samuelfairbrass@icloud.com")){ System.out.println("First Name: "+data[0]+" Last Name: "+data[1]+" Email: "+data[2]+" Phone Number: "+data[3]+" Activity Level: "+data[7]); } } } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } finally { if (br != null) { try { br.close(); } catch (IOException e) { e.printStackTrace(); } } }