【发布时间】:2018-09-28 23:11:31
【问题描述】:
我在 C# 中反序列化了具有以下数据结构的 JSON 文件
[DataContract]
public class SentimentData
{
[DataMember(Name ="Column1")]
public IEnumerable<string> Column1 { get; set; }
[DataMember(Name ="Column-2")]
public IEnumerable<string> Column2 { get; set; }
}
column1 的计数不等于column2 的计数。我只想基本上转储第一列中 column1 中的所有数据和第二列中 column2 中的数据。我尝试了以下但没有工作。
using (var writer = new StreamWriter(@"C:\test.csv"))
{
var nr = column1data.Select(y => new { Column1= y }).ToList();
//var nnr = column2data.Select(y => new { Column2 = y }).ToList();
var csv = new CsvWriter(writer);
csv.WriteRecords(nr);
//csv.WriteRecords(nnr);
writer.Flush();
}
有人知道怎么做吗?
示例 json:
{
"Negative": [
"a.txt",
"b.txt",
"a.txt",
"b.txt",
"a.txt",
"b.txt"
],
"Non-Negative": [
"a.txt",
"b.txt",
"a.txt",
"b.txt",
"a.txt",
"b.txt",
"a.txt",
"b.txt",
"a.txt",
"b.txt",
"a.txt",
"b.txt",
"a.txt",
"b.txt",
"a.txt",
"b.txt",
"a.txt",
"b.txt",
"a.txt",
"b.txt",
"a.txt",
"b.txt",
"a.txt",
"b.txt"
]
}
【问题讨论】:
-
@Nkosi 我已经添加了示例 json。我需要格式为 Column1 |第 2 列。如果你在这里看到没有。 Column2 中的记录更大
-
@Nkosi 我只是为那些没有数据的列清空。基本上只是转储列
-
那么@marsze 提供的链接看起来是您构建所需对象的解决方案,然后可以将其传递给 csv 编写器