c# - 标头 JSON 将 CSV 转换为 JSON
问题描述
嗨,我想将 CSV 字符串转换为 JSON,但我认为 JSON 的标头与编码有一些问题。
这里的代码和输出:
[{...“Endere_o_4”:“”,“Endere_o_5”:“”,“Endere_o_6”:“”,“C_digo_Postal”:“1000-045”,...]}
预期结果:[{...“Endereço_4”:“”,“Endereço_5”:“”,“Endereço_6”:“”,“Código_Postal”:“1000-045”,...]}
public void MssCSVtoJSON(string ssCSV, out string ssJSON)
{
ssJSON = "";
ChoCSVFileHeaderConfiguration headerConfiguration = new ChoCSVFileHeaderConfiguration(null, new System.Globalization.CultureInfo("pt-PT"));
ChoCSVRecordConfiguration config = new ChoCSVRecordConfiguration();
config.FileHeaderConfiguration = headerConfiguration;
StringBuilder sb = new StringBuilder();
using (var p = ChoCSVReader.LoadText(ssCSV,Encoding.Unicode, config, null).WithFirstLineHeader()) {
using (var w = new ChoJSONWriter(sb)) {
w.Configuration.Encoding = Encoding.Unicode;
w.Write(p);
}
}
ssJSON = sb.ToString();
// TODO: Write implementation for action
} // MssCSVtoJSON
解决方案
这是已知问题,请修复并推送ChoETL 1.1.0.5-alpha2
nuget 包。
这是工作样本
string csv = @"Endereço_4, Endereço_5
1, 11
2, 22";
StringBuilder output = new StringBuilder();
using (var r = ChoCSVReader.LoadText(csv).WithFirstLineHeader())
{
using (var w = new ChoJSONWriter(output))
w.Write(r);
}
Console.WriteLine(output);
输出:
[
{
"Endereço_4": "1",
"Endereço_5": "11"
},
{
"Endereço_4": "2",
"Endereço_5": "22"
}
]
推荐阅读
- ruby - 创建 SQS 标准队列时出现 MalformedQueryString 异常
- github - 以不同的分支名称将特定分支镜像到另一个 repo
- visual-studio-code - 启动时打开目录?
- python - 在批处理文件中运行python时如何将python打印输出保存为文本
- kotlin - 取消订阅异步 grpc 存根中的观察者 - Java / Kotlin
- woocommerce - Woocommerce 发送重复的管理员通知
- r - 将函数应用于不同的数据帧
- php - 循环遍历多个值的数组
- swift - 为什么 Comparable 协议没有 Equatable 的默认实现?
- javascript - 我不明白为什么我在这个方法中得到了以前的状态值