我正在使用opencsv读取csv文件.
我无视第一行; csv文件是制表符分隔的,其中一些值用双引号括起来.
当我读取具有'\'字符的列的值时,会发生此问题,这会从值中删除.
reader = new CSVReader(new FileReader(exchFileObj),'\t','"',1);
Run Code Online (Sandbox Code Playgroud)
例如在原始文件中:
address = 12\91buenosaires
Run Code Online (Sandbox Code Playgroud)
它变成了:
address = 1291buenosiares
Run Code Online (Sandbox Code Playgroud)
在csvreader生成的字符串数组中.如何修改它以便能够读取'\'字符?
JMM*_*JMM 22
我有同样的问题,找不到另一个我保证不会出现在我的csv文件中的角色.根据sourceforge上的一篇文章,您可以使用带有'\ 0'的显式构造函数来指示您不需要任何转义字符.
http://sourceforge.net/tracker/?func=detail&aid=2983890&group_id=148905&atid=773542
CSVParser parser = new CSVParser(CSVParser.DEFAULT_SEPARATOR, CSVParser.DEFAULT_QUOTE_CHARACTER, '\0', CSVParser.DEFAULT_STRICT_QUOTES);
Run Code Online (Sandbox Code Playgroud)
我做了一些粗略的测试,这似乎工作得很好,至少反斜杠肯定能通过.