我正在使用.NET并尝试转换CSV数据输入(示例第1行是标题,后续行是数据:header1,header2,header3; row11,row12,row13; row21,row22,row23)。尝试将其转换为基于另一个XML模板的XML格式(有多个XML模板,基于该模板应生成相应的XML)
在.NET中执行此操作的最佳做法是什么?
示例template1:
<Claims>
<Claim>
<Header1></Header1>
<Header2></Header2>
<Header3></Header3>
</Claim>
</Claims>
示例模板2:
<Handlers>
<Handler>
<Header2></Header2>
<Header3></Header3>
<Header1></Header1>
</Handler>
</Handlers>
答案 0 :(得分:0)
您应该找到deserilizes CSV's的库,然后使用XmSerializer将其序列化为Xml。
即使用类似CsvHelper
的内容var csv = new CsvReader( File.OpenText( "file.csv" ) );
var myCustomObjects = csv.GetRecords<MyCustomObject>();
然后获取生成的对象并序列化为Xml:
XmlSerializer serializer = new XmlSerializer(typeof(MyCustomObject));
var subReq = new MyCustomObject();
StringWriter sww = new StringWriter();
XmlWriter writer = XmlWriter.Create(sww);
serializer.Serialize(writer, subReq);
var xml = sww.ToString(); // Your xml