我需要在JSON对象中转换CSV数据(包含一行标题和一行数据)。 的CSV包含嵌套列,有一个例子:将CSV(嵌套对象)转换为JSON
id,name,category/id,category/name,category/subcategory/id,category/subcategory/name,description
0,Test123,15,Cat123,10,SubCat123,Desc123
而且我希望有一个JSON看起来像这样:
{
"id": 0,
"name": "Test123",
"category": {
"id": 15,
"name": "Cat123",
"subcategory": {
"id": 10,
"name": "SubCat123",
}
},
"description": "Desc123"
}
我试过CsvHelper和ChoETL库,都没有成功,因为这些就我所知,libs要求我有一个类作为模型,但我没有这些类,因为数据是完全动态的。
该网站http://www.convertcsv.com/csv-to-json.htm是一个成功的例子。 只需粘贴上面创建的JSON,转到步骤3并选中'Recreate nested objects and arrays'选项,然后在步骤5中单击'CSV to JSON'。
但是我需要在我的应用程序,而不使用外部框架。
我该如何使这个工作?
如果数据是完全动态的并且您没有合理的结构期望,您可以期望将未知变成已知结构吗? – maccettura
其中之一,你可以尝试建立一个字典Dictionary,其中key是属性的名称,值可以是嵌套对象的值或另一个字典。棘手的部分是决定值是字符串还是整数。稍后,您可以用JSON.Net序列化它,而不需要太多努力。 –
orhtej2