c++ - 在 C++ 中将 JSON 转换为 CSV

标签 c++ json excel csv

我正在尝试用 C++ 将 JSON 数组转换为 CSV 文件,我很好奇该方法应该是什么。

假设我有一个如下所示的 JSON 数组:

[["Bcode","firstname","lastname"],
["11234","richard","nixon"]]

我想将其转换为 .csv,(据我所知)

Bcode,firstname,lastname,
11234,richard,nixon

我得到的 JSON 数组似乎已经有一个换行符,所以我可以只删除所有引号和括号并将其作为一个可用的 CSV 文件吗?

或者,有没有我可以将 JSON 数组保存到 MSExcel 可以读取的文件扩展名?

谢谢

最佳答案

没有理由删除引号——CSV 可以(并且经常)包含它们。任何时候你都需要在字段中包含逗号(例如,如果你有一个“名称”字段而不是 firstnamelastname 作为单独的字段,则值可能是:“Nixon, Richard”。如果删除引号,它将不再像一个字段。

您确实要删除行尾的逗号。

我还会考虑包含嵌入引号的任何字段。如果没记错的话,JSON 使用 \" 来表示字段内的引号。CSV 使用 "",因此除非您的数据不/不会包含任何嵌入式引号,您可能还需要处理将 \" 替换为 "" 的问题。

关于c++ - 在 C++ 中将 JSON 转换为 CSV,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11546004/

相关文章:

excel - 将一系列单元格中的文本保存到 .txt 文件

vba - 将代码从 VBA 运行到 VBScript 再返回到 VBA

c++ - std::unique 是否有大小限制?

C++ 如何初始化 std::istream* 尽管构造函数受到保护

c# - 如何让 ReadJson 返回 "default"行为——就好像 CanConvert 返回 false

VBA:在运行时将文本框添加到用户窗体

c++ - 使用 ImageMagic 库将图像转换为像素图

c++ - 分配大小无效 - 对象变量

java - 如何从 android.jar 中删除包?

java - 如何在 Android 中创建 JSON?