【发布时间】:2019-10-23 11:00:05
【问题描述】:
尝试读取数据不是用逗号分隔,而是使用引号的文件:"
例如:
"num" "date" "callsite" "level" "thread"
这可以吗?
csvhelper 给出找不到标头的异常。
【问题讨论】:
-
数据是制表符还是空格分隔?
标签: csvhelper
尝试读取数据不是用逗号分隔,而是使用引号的文件:"
例如:
"num" "date" "callsite" "level" "thread"
这可以吗?
csvhelper 给出找不到标头的异常。
【问题讨论】:
标签: csvhelper
如果你的数据是用制表符分隔的,那么你可以设置csv.Configuration.Delimiter = "\t";
public class Program
{
public static void Main(string[] args)
{
using (MemoryStream stream = new MemoryStream())
using (StreamWriter writer = new StreamWriter(stream))
using (StreamReader reader = new StreamReader(stream))
using (CsvReader csv = new CsvReader(reader))
{
writer.WriteLine("\"num\"\t\"date\"\t\"callsite\"\t\"level\"\t\"thread\"");
writer.WriteLine("\"1\"\t\"1/1/2019\"\t\"callsite1\"\t\"high\"\t\"20\"");
writer.Flush();
stream.Position = 0;
csv.Configuration.Delimiter = "\t";
var results = csv.GetRecords<Foo>().ToList();
}
Console.ReadKey();
}
}
public class Foo
{
public int num { get; set; }
public DateTime date { get; set; }
public string callsite { get; set; }
public string level { get; set; }
public string thread { get; set; }
}
【讨论】: