我正在使用此代码读取csv中的一行并获取列名称,但问题是我正在获取备用cloumn名称。它正在跳过读取第二列的第一列,然后跳过第三列并读取第四列。
BufferedReader br = new BufferedReader(new FileReader(csvFile));
String line = "";
StringTokenizer st = null;
int lineNumber = 0;
int tokenNumber = 0;
//read comma separated file line by line
while ((line = br.readLine()) != null) {
lineNumber++;
//use comma as token separator
st = new StringTokenizer(line, ",");
while (st.hasMoreTokens()) {
//tokenNumber++;
s.add(st.nextToken());
//display csv values
System.out.print(st.nextToken() + " ");
}
答案 0 :(得分:1)
你在while循环中调用了两次st.nextToken()。每一次,它都会抓住下一个元素。
您可能希望将StringTokenizer替换为line.split(","),除非您特别需要使用它(例如性能)。