我想使用 java 读取 PSV 文件。我的 PSV 文件中的记录有 4 列。我只想读取和输出第 3 列和第 4 列。做这个的最好方式是什么。这是我所拥有的:
BufferedReader PSVFile = new BufferedReader(new FileReader(fileName));
String dataRow = PSVFile.readLine();
while (dataRow != null)
{
String[] dataArray = dataRow.split("\n");
for (String item:dataArray)
{
String[] elements = item.split("|");
System.out.println(item);
}
System.out.println();
dataRow = PSVFile.readLine();
}
PSVFile.close();
System.out.println();
基于@AljoshaBre 建议我使用 CSVReader,这样做:
reader = new CSVReader(new FileReader(fileName),'|');
String [] nextLine;
while ((nextLine = reader.readNext()) != null)
{
System.out.println( nextLine[3] + nextLine[4]);
}
我得到了所需的输出,但随后出现错误:线程“main”中的异常 java.lang.ArrayIndexOutOfBoundsException: 2 at Read_PSV.main(Read_PSV.java:20) 第 20 行是 System.out.println( nextLine[3] +下一行[4]);