[英]Convert dynamic csv to json containing List<string> C#
I want to serialize a list of strings in C#?我想序列化 C# 中的字符串列表? I have previously successfully used an open-source library Cinchoo ETL for similar tasks, but I am stuck in this particular scenario.我之前成功地使用了开源库 Cinchoo ETL 来完成类似的任务,但我被困在这个特定的场景中。 I do not want to use POCO since my source data structure is dynamic.我不想使用 POCO,因为我的源数据结构是动态的。 I would much rather read the data from a csv and serialize it.我宁愿从 csv 读取数据并将其序列化。
My source data in csv format:我的源数据为 csv 格式:
id,name,friends/0,friends/1
1,Tom,Dick,Harry
Required output JSON - {"id":1,"name":"Tom","friends":["Dick","Harry"]}
必需 output JSON - {"id":1,"name":"Tom","friends":["Dick","Harry"]}
Here you go, you can do with Cinchoo ETL as below在这里你 go,你可以用Cinchoo ETL做如下
string csv = @"id,name,friends/0,friends/1
1,Tom,Dick,Harry";
StringBuilder json = new StringBuilder();
using (var w = new ChoJSONWriter(json)
.Configure(c => c.SupportMultipleContent = true)
.Configure(c => c.SingleElement = true)
)
{
using (var r = ChoCSVReader.LoadText(csv).WithFirstLineHeader()
.Configure(c => c.AutoArrayDiscovery = true)
.Configure(c => c.ArrayIndexSeparator = '/')
)
w.Write(r);
}
Console.WriteLine(json.ToString());
Output: Output:
{
"id": "1",
"name": "Tom",
"friends": [
"Dick",
"Harry"
]
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.