以下代码读取 csv 文件并定义取自 csv 文件的一行的字段。问题是 csv 文件的名字列的名称包含逗号“,”(例如 Charles,Junior)。逗号和它后面的名字是名字的一部分。我很难想出一种有效的方法来检查这些逗号并将它们视为分隔符,因为它们是名字本身的一部分。逗号的存在会创建一个不可取的新选项卡。我需要在不篡改 csv 文件的情况下执行此操作。有什么建议么?
//skip the first line since it is column names
strLine = br.readLine();
int tokenNumber= 0;
//read comma separated file line by line
while( (strLine = br.readLine()) != null)
{
//break comma separated line using ","
st = new StringTokenizer(strLine, ",");
while(st.hasMoreTokens())
{
switch (tokenNumber)
{
case 1: firstName = st.nextToken(); break;
case 2: lastName = st.nextToken(); break;
default: st.nextToken(); break;
}
tokenNumber++;
}