Java 使用GSON将JSON转换为hashmap
我正在用Java进行一个项目,我想使用GSON将文本放入HashMap中,以下是我的JSON:Java 使用GSON将JSON转换为hashmap,java,json,map,hashmap,gson,Java,Json,Map,Hashmap,Gson,我正在用Java进行一个项目,我想使用GSON将文本放入HashMap中,以下是我的JSON: { "someText": { "text1": "lorem ipsum", "text2": "ipsum lorem" } } 下面是我的一段代码: private static class myTexts { private final Map<String, String> someText = new HashMap<String, St
{
"someText": {
"text1": "lorem ipsum",
"text2": "ipsum lorem"
}
}
下面是我的一段代码:
private static class myTexts {
private final Map<String, String> someText = new HashMap<String, String>();
}
我有一个错误:
com.google.gson.JsonSyntaxException:duplicate key:null
,我已经试着查找出了什么问题,但我似乎找不到问题:/如果您在
{
"someText": {
"text1": "lorem ipsum",
"text2": "ipsum lorem"
}}
^
因此,使您的JSON格式良好,如下所示
myTexts t = new Gson().fromJson(myJsonFile, myTexts.class);
System.out.println(t.someText);
印刷品
{text1=lorem ipsum, text2=ipsum lorem}
这似乎正是您所期待的。试试这个
public static Map<String, String> jsonToMap(String jsonString) {
Type type = new TypeToken<Map<String, String>>(){}.getType();
Gson gson = new Gson();
return gson.fromJson(jsonString, type);
}
公共静态映射jsonToMap(字符串jsonString){
Type Type=new-TypeToken(){}.getType();
Gson Gson=新的Gson();
返回gson.fromJson(jsonString,type);
}
我最后忘了“}”。这是我真正的Json,我刚刚做了复制粘贴错误。
public static Map<String, String> jsonToMap(String jsonString) {
Type type = new TypeToken<Map<String, String>>(){}.getType();
Gson gson = new Gson();
return gson.fromJson(jsonString, type);
}