【发布时间】:2015-10-26 17:00:48
【问题描述】:
package com.testing;
import java.io.BufferedReader;
import java.io.FileReader;
public class CsvParser {
public static void main(String[] args) {
String csvFile = "D:/code-home/SentimentAnalysis/test_data/Sentiment Analysis Dataset.csv";
BufferedReader br = null;
String line = "";
String cvsSplitBy = "\t";
br = new BufferedReader(new FileReader(csvFile));
while ((line = br.readLine()) != null) {
// use comma as separator
String []tweet = line.split(cvsSplitBy);
System.out.println(tweet[1]);
System.out.println(tweet[3]);
}
}
该程序的目的是解析 CSV 格式。我用过bufferRead方法。
当我去编译程序时,它工作正常。当我运行程序时,我得到一个错误,
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 1
at com.testing.CsvParser.main(CsvParser.java:34)
【问题讨论】:
-
您是否尝试打印您尝试拆分的
line?通常 CSV 文件使用逗号分隔符,而不是\t(CSV = 逗号分隔值)。 -
文件中有什么内容?显示样本
-
程序只是在你的文件中告诉你,当你用表格(“\t”)分割它时,没有足够的空间访问第二个插槽(tweet[1])。检查您的文件!
-
请上传示例文件
-
在你的程序中查看评论
// use comma as separator
标签: java arrays arraylist file-handling