我有下面的代码块使用OpenCSV读取CSV文件并存储第7列。我面临的问题是,我使用;
作为CSV文件中的分隔符,但它也使用,
作为分隔符。我如何避免这种情况?
无法将“”放入CSV中,因为我们从客户端获取了不可编辑的文件。
CSVReader reader = null;
String[] nextCsvLine = new String[50];
String splitBy = ";";
int count = 0;
try {
StringReader sr = new StringReader(new String(in, offset, len));
reader = new CSVReader(sr);
while ((nextCsvLine = reader.readNext()) != null) {
for (String linewithsemicolon : nextCsvLine) {
log.debug("Line read : "+linewithsemicolon);
String[] b = linewithsemicolon.split(splitBy);
if (count==0){
count++;
continue;
}
else {
detailItems.add(b[7]);
log.debug("7th position: "+b[7]);
count++;
}
}
1条答案
按热度按时间ffvjumwh1#
使用分隔符为OpenCSV的重载版本
更新(感谢@Matt)-更好地用途:
我认为
count
ing做得有点不对:你可以用for循环来代替:
其中第七个字段应该具有索引6。