CSVHelper 如何将字符串映射到对象
CSVHelper how to map a string to object
我在变量中有一个字符串,而不是在文件中。
我可以使用 CSVHelper (https://joshclose.github.io/CsvHelper/) 来解析字符串并将其映射到我的对象吗?
映射 CSV 文件的代码有效:
TextReader reader = new StreamReader("data.csv");
var csvReader = new CsvReader(reader);
var records = csvReader.GetRecords<CarModel>();
如何更改它以将字符串映射到对象:
String carmodels "make,model,year\n\rFord,Escort,1998\n\rHonda,Civiv,1994";
TextReader reader = new StreamReader(carmodels);
var csvReader = new CsvReader(reader);
var records = csvReader.GetRecords<CarModel>();
感谢您的帮助,
马克
您 "need" 为您的 class 设置一个映射,因此它知道哪个列到哪个 属性。
即使是 .AutoMap()
也可以为您工作。
https://joshclose.github.io/CsvHelper/examples/configuration/class-maps/auto-mapping/
假设 CarModel
类型已经正确映射,您可以使用 StringReader
而不是 StreamReader
:
string carmodels = "make,model,year\n\rFord,Escort,1998\n\rHonda,Civiv,1994";
using (var reader = new StringReader(carmodels))
using (var csvReader = new CsvReader(reader))
{
var records = csvReader.GetRecords<CarModel>();
}
我在变量中有一个字符串,而不是在文件中。
我可以使用 CSVHelper (https://joshclose.github.io/CsvHelper/) 来解析字符串并将其映射到我的对象吗?
映射 CSV 文件的代码有效:
TextReader reader = new StreamReader("data.csv");
var csvReader = new CsvReader(reader);
var records = csvReader.GetRecords<CarModel>();
如何更改它以将字符串映射到对象:
String carmodels "make,model,year\n\rFord,Escort,1998\n\rHonda,Civiv,1994";
TextReader reader = new StreamReader(carmodels);
var csvReader = new CsvReader(reader);
var records = csvReader.GetRecords<CarModel>();
感谢您的帮助,
马克
您 "need" 为您的 class 设置一个映射,因此它知道哪个列到哪个 属性。
即使是 .AutoMap()
也可以为您工作。
https://joshclose.github.io/CsvHelper/examples/configuration/class-maps/auto-mapping/
假设 CarModel
类型已经正确映射,您可以使用 StringReader
而不是 StreamReader
:
string carmodels = "make,model,year\n\rFord,Escort,1998\n\rHonda,Civiv,1994";
using (var reader = new StringReader(carmodels))
using (var csvReader = new CsvReader(reader))
{
var records = csvReader.GetRecords<CarModel>();
}