【发布时间】:2020-07-23 20:16:38
【问题描述】:
我有一个这样的 JSONArray ->
[
{ "Name" : "Test1", "Age" : 10, "Gender" : "M", "Description" : "Hello World" },
{ "Name" : "Test2", "Age" : 21, "Gender" : "M", "Description" : "Bye\nWorld" }
]
我需要将其转换为 csv 格式。我正在使用org.json.CD 来实现这一点
String csv = CDL.toString(arr); 其中arr 是上面给出的 JSONArray。生成的 csv 字符串为Name,Age,Gender,Description\nTest1,12,M,Hello World\nTest2,21,M,Bye\nWorld。这个的 csv 输出会是这样的
Name,Age,Gender,Description
Test1,12,M,Hello World
Test2,21,M,Bye
World
但这不是正确的转换。正确的转换应该是
Name,Age,Gender,Description
Test1,12,M,Hello World
Test2,21,M,Bye\nWorld
无法手动将此字符串 Name,Age,Gender,Description\nTest1,12,M,Hello World\nTest2,21,M,Bye\nWorld 更改为 Name,Age,Gender,Description\nTest1,12,M,Hello World\nTest2,21,M,Bye\\nWorld我该如何解决这个问题?
PS JSONArray(name, age, gender, description) 中的值不固定。我正在寻找一种以通用方式解决此类问题的方法
【问题讨论】:
-
您说您不能手动手动更改 json。这是否意味着你不能在它之前运行一个函数?为什么?是什么阻止您在转换之前扫描 json 字符串并更改内容 - 从 \n 到 \\n 然后运行转换?