[问题] 有关读取CSV的问题

楼主: stw82 (Godhand)   2017-05-10 18:34:02
网络上最常找到的java用来读CSV的方式
应该就是用BufferedReader的readLine()来做逐行读取了
不过今天碰到一个状况 在csv档的其中一个字段有包含了换行符号
所以当readLine()读到该行时 换行符号其后的内容就被当成下一行
而导致多出一行被截断之不完整的资料
想请问不知碰到这种情形时 有什么好的解决方式?
或者说不要用BufferedReader而用别的方式来读档?
作者: ssccg (23)   2017-05-10 18:42:00
https://tools.ietf.org/html/rfc4180有换行的话,字段必须包在""里面,你可以加上规则检查如果有开始的"但还没遇到结束的"之前就换行时换行符号也是资料总之你要保证你的parser符合规格,不管用啥API实作或是如果你是特规的(像是假设每行栏数固定,最后一栏不会包含换行)那就照你的规则处理
作者: pttworld (批踢踢世界)   2017-05-10 19:04:00
BufferedReader有read
作者: Chikei ( )   2017-05-11 01:24:00
数escape character,数量不对就多读一行...

Links booklink

Contact Us: admin [ a t ] ucptt.com