【发布时间】:2015-12-09 12:56:56
【问题描述】:
我目前正在处理从 URL 中提取 CSV 文件并修改其条目。我目前正在使用 StreamReader 读取 CSV 的每一行并将其拆分为一个数组,我可以在其中根据其位置修改每个条目。
CSV 由电子表单提供程序生成,其中特定表单条目是多行字段,用户可以在其中添加多个注释。但是,当用户输入新笔记时,他们会用换行符分隔每个笔记。
CSV 示例:
"FName","LName","Email","Note 1: some text
Note 2: some text"
由于我的代码逐行拆分每个 CSV 条目,一旦到达这些注释,它就会认为它是一个新的 CSV 条目。这导致我的修改条目的代码不起作用,因为元素位置变得不正确。 (带有空或单行注释字段的 CSV 条目可以正常工作)
您对为此采取的最佳方法有什么想法吗?我尝试添加代码来替换回车或跳过空行,但似乎没有帮助。
【问题讨论】:
-
这不是一个有效的 CSV 文件,您可以清理它吗?
-
你能用
.split()发布你的Reader方法吗 -
@Berger 为什么无效?它符合RFC 4180。
-
考虑使用像Apache Commons CSV这样的CSV阅读库。
-
@RealSkeptic ,我不敢相信 csv 行有换行符,我会更深入地检查 RFC :)