我想把这个我不知道叫什么的名字转换成Json。你能帮我吗?
[{key1=value1,key2=value2,key3=value3}]
结果必须是这样的:{
"key1":"value1",
"key2"="value2",
"key3"="value3"
}
Map
对象的内容,则可以使用Gson在Java对象(包括自定义对象)之间转换为JSON,然后再将JSON重新转换为对象。看起来像这样:Gson gson = new Gson();
String json = gson.toJson(YOUR_MAP);
返回地图:
Gson gson = new Gson(); Type type = new TypeToken<Map<KEY_TYPE, VALUE_TYPE>>(){}.getType(); Map YOUR_MAP = gson.fromJson(JSON, type);
如果这不是Map
,而只是一个想作为Map
但又不太适合的奇怪字符串,您可以通过以下方式设置字符串格式:使用
substring(int start, int end)
方法移去两端的两套支架- 用
split(",|\\=")
用逗号分隔条目- 将
String
重新加引号为JSON
[
String JSON = "{ \"" + arrayFromOriginalString[1] + "\"=\"", arrayFromOriginalString[2]...
假定源字符串始终具有相同数量的条目]- 如果源始终不同,则可以使用
for
循环并加2
String json = "{"; for(int i = 0; i < YOUR_ARRAY.length; i += 2;) { json += "\"" + YOUR_ARRAY[i] + "\"=\"" + YOUR_ARRAY[i + 1] + "\""; //Some kind of if condition to decide if a comma is required (Last entry) } json += "}";
我没有运行此代码或未检查语法,但该概念应该有效