我正在使用此代码读取 csv 中的一行并获取列名称,但问题是我正在获取备用列名称。它跳过第一列读取第二列,然后跳过第三列并读取第四列。 .
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() + " ");
}
最佳答案
您在 while 循环中调用 st.nextToken() 两次。每次,它都会抓取下一个元素。
除非您有特殊需要(例如性能),否则您可能希望将 StringTokenizer 替换为 line.split(",")。
关于java - 在java中使用缓冲读取器读取行时获取备用列名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17711714/