我正在尝试处理LLarge CSV文件 - 1Gb,有时我可能会获得列值为'的记录,'在它。
e.g。
" A"" COL1"" COL2"" COL3"" COL4"
" B"" ROW1"" Row1Col2"" Row1Col3"" Row1Col4"
" C""行2""行2,Col2中""行2,COL3"" Row2Col4"
最初我使用了Split(,),但是对于C行,由于列值中有额外的逗号,我收到的数据不正确。
我决定使用FileHelpers,但它似乎没有正确提取值。
当我在Excel中打开文件时,它正确格式化(即显示正确列中的每个值)。
我想在双引号中提取所有值。
答案 0 :(得分:2)
不要重新发明轮子。
使用TextFieldParser。它像Excel一样解析你的行。
答案 1 :(得分:2)
使用FileHelpers
,您必须使用此FieldQuotedAttribute
FieldQuoted:表示该字段必须像a一样读写 引用字符串。 (您可以传递引用字符,并可以设置引用 是可选的,如Excel CSV格式)
[FieldQuoted()] // Quoted with "
public string CustomerName;