我正在使用Lumenworks Fast CsvReader,并且在阅读Kelley Blue Book的文件时发生了异常错误:
在位于'1169'的记录'1281'字段'5附近,CSV似乎已损坏
该文件以制表符分隔.在那里我发现使用双引号,但我没有看到如何逃避它并正常恢复,因为它是制表符分隔数据.
--Characters in Text File--
12345 2013 RAV4 "Sport" Sport Utility 4D 2
--Source Code--
using(CsvReader csvReader = new CsvReader(new StreamReader(filePath), false, '\t', '"', '"', '#', LumenWorks.Framework.IO.Csv.ValueTrimmingOptions.QuotedOnly))
{
}
Run Code Online (Sandbox Code Playgroud)
我尝试了许多不同的CsvReader设置而没有运气.你用的是什么效果很好?我用逗号分隔文件没有那么多麻烦.
I wanted to know if there is any way to make CSV reader read all the columns in the CSV (which will have same column names). I get a An item with the same key has already been added error. I want this to work because my logic is to make a array of similar named columns if it exists and later for each instance of the array element I write further logic.
The final point is I want to …
我正在使用Lumenworks csv阅读器阅读csv文件.以下是一个示例记录
"001-0000265-003"|"Some detail"|"detal1"|"detail2"|"detal3"|"detail4"|"detail5"|"detail6"
Run Code Online (Sandbox Code Playgroud)
我用下面的构造函数创建了一个类来读取这个文件
using (var input = new CsvReader(stream, true, '|'))
{
//logic to create an xml here
}
Run Code Online (Sandbox Code Playgroud)
当细节内没有双引号时,这很好用.但是当scinarios像这样
"001-0000265-003"|"Some " detail"|"detal1"|"detail2"|"detal3"|"detail4"|"detail5"|"detail6"
Run Code Online (Sandbox Code Playgroud)
读者抛出异常
An unhandled exception of type 'LumenWorks.Framework.IO.Csv.MalformedCsvException' occurred in LumenWorks.Framework.IO.dll
Run Code Online (Sandbox Code Playgroud)
那么我使用了带有7个参数的CsvReader构造函数,
CsvReader(stream, true, '|', '"', '"', '#', LumenWorks.Framework.IO.Csv.ValueTrimmingOptions.All))
Run Code Online (Sandbox Code Playgroud)
但我仍然得到同样的错误.请提供任何建议.
我正在阅读一些复杂的文件如下,
"001-0000265-003"|"ABC 33"X23" CDE 32'X33" AAA, BB'C"|"detal1"|"detail2"|"detal3"|"detail4"|"detail5"|"detail6"
Run Code Online (Sandbox Code Playgroud)