導航:首頁 > 編程語言 > json字元串轉換成map

json字元串轉換成map

發布時間:2023-07-20 23:42:59

㈠ 為什麼要把json轉換成map, 有的時候為什麼把map轉換成json 請大蝦指教啊,急!!!

我們在後台可以使用map來處理對象和數據,然後map轉化成json傳遞到前台,主要是因為json中即保存了對象又保存了List,就是那種對象和list是交叉的那種,我們需要用到map。轉成json之後我們就可以傳遞到前台,然後進行處理。json轉化成map是因為有些json字元串或者文件我們要將它讀取成map好在後台進行處理。

java 將一個String 形式的json轉化成Map,比如"{\"a\":\"1\",\"b\

將一個String 形式的轉化成Map的Java程序如下:

importjava.util.HashMap;

importjava.util.Iterator;

importjava.util.Map;

importorg.json.JSONObject;

publicclassFFF{

publicstaticvoidmain(String[]args){

Strings="{"a":"1","b":2,"c":"2016-5"}";

JSONObjectjso=newJSONObject(s);

Map<String,Object>m=newHashMap<String,Object>();

Iteratorit=jso.keys();

while(it.hasNext()){

Stringkey=(String)it.next();

Objectvalue=jso.get(key);

m.put(key,value);

}

System.out.println(m.toString());

}

}

運行結果:

{a=1, b=2, c=2016-5}

㈢ json字元串怎樣轉換成map

例子如下:
package com.zkn.newlearn.json;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import java.util.Map;
/**
* JSON字元串自動轉換
* Created by zkn on 2016/8/22.
*/
public class JsonToMapTest01 {
public static void main(String[] args){
String str = "{\"0\":\"zhangsan\",\"1\":\"lisi\",\"2\":\"wangwu\",\"3\":\"maliu\"}";
//第一種方式
Map maps = (Map)JSON.parse(str);
System.out.println("這個是用JSON類來解析JSON字元串!!!");
for (Object map : maps.entrySet()){
System.out.println(((Map.Entry)map).getKey()+" " + ((Map.Entry)map).getValue());
}
//第二種方式
Map mapTypes = JSON.parseObject(str);
System.out.println("這個是用JSON類的parseObject來解析JSON字元串!!!");
for (Object obj : mapTypes.keySet()){
System.out.println("key為:"+obj+"值為:"+mapTypes.get(obj));
}
//第三種方式
Map mapType = JSON.parseObject(str,Map.class);
System.out.println("這個是用JSON類,指定解析類型,來解析JSON字元串!!!");
for (Object obj : mapType.keySet()){
System.out.println("key為:"+obj+"值為:"+mapType.get(obj));
}
//第四種方式
/**
* JSONObject是Map介面的一個實現類
*/
Map json = (Map) JSONObject.parse(str);
System.out.println("這個是用JSONObject類的parse方法來解析JSON字元串!!!");
for (Object map : json.entrySet()){
System.out.println(((Map.Entry)map).getKey()+" "+((Map.Entry)map).getValue());
}
//第五種方式
/**
* JSONObject是Map介面的一個實現類
*/
JSONObject jsonObject = JSONObject.parseObject(str);
System.out.println("這個是用JSONObject的parseObject方法來解析JSON字元串!!!");
for (Object map : json.entrySet()){
System.out.println(((Map.Entry)map).getKey()+" "+((Map.Entry)map).getValue());
}
//第六種方式
/**
* JSONObject是Map介面的一個實現類
*/
Map mapObj = JSONObject.parseObject(str,Map.class);
System.out.println("這個是用JSONObject的parseObject方法並執行返回類型來解析JSON字元串!!!");
for (Object map: json.entrySet()){
System.out.println(((Map.Entry)map).getKey()+" "+((Map.Entry)map).getValue());
}
String strArr = "{{\"0\":\"zhangsan\",\"1\":\"lisi\",\"2\":\"wangwu\",\"3\":\"maliu\"}," +
"{\"00\":\"zhangsan\",\"11\":\"lisi\",\"22\":\"wangwu\",\"33\":\"maliu\"}}";
// JSONArray.parse()
System.out.println(json);
}
}

㈣ 如何把map轉成json字元串

1、如圖所示新建一個demo作為測試。


㈤ java怎麼將json文件讀取進來並轉成map

java中解析json文件,需要下載json解析包,用JSONUtil.deserialize()就可以了,範例:

importorg.apache.struts2.json.JSONUtil;

publicclassJsonToJava{
publicstaticvoidmain(String[]args){
try{
Strings=JSONObject.toString();
Objecto=JSONUtil.deserialize(s);
Objecto1=((HashMap)o).get("DATA");//此舉將DATA作為對象,版得到。
Mapmap=(Map)o1;//然後強轉權o1

}catch(Exceptione){
e.printStackTrace(System.out);
}
}
}

㈥ android怎麼把json轉換為hashmap

在android中把json轉換為hashmap,代碼如下:
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;

import net.sf.json.JSONArray;
import net.sf.json.JSONException;
import net.sf.json.JSONObject;

import com.wideyou.model.ExpressOrder;
import com.wideyou.warehouse.model.Storage;

public class HelperFunction {
public ExpressOrder ExpressOrderClassCast(JSONObject reserJson){
ExpressOrder expressOrder=new ExpressOrder();
expressOrder.setCid(Integer.parseInt(reserJson.getString("userId")));
expressOrder.setSendPerson(reserJson.getString("sendPerson"));
expressOrder.setSendPhone(reserJson.getString("sendPhone"));
expressOrder.setSendAddress(reserJson.getString("sendAddress"));
expressOrder.setBeginAddress(reserJson.getString("beginAddress"));
expressOrder.setOtherDes(reserJson.getString("otherDes"));
expressOrder.setEndAddress(reserJson.getString("endAddress"));
expressOrder.setReservPerson(reserJson.getString("reservPerson"));
expressOrder.setReservPhone(reserJson.getString("reservPhone"));
expressOrder.setReservAddress(reserJson.getString("reservAddress"));
expressOrder.setPostCode(reserJson.getString("reservAddress"));
expressOrder.setPayId(Integer.parseInt(reserJson.getString("payId")));
return expressOrder;
}

public Storage StorageClassCast(JSONObject reserJson){
Storage storage=new Storage();
storage.setSname(reserJson.getString("sname"));
storage.setCount(Integer.parseInt(reserJson.getString("count")));
return storage;
}

public static int getCid(JSONObject reserJson, boolean isConsumer){
if(isConsumer){
return Integer.parseInt(reserJson.getString("userId"));
}else{
return Integer.parseInt(reserJson.getString("memberId"));
}
}
//map轉換為json字元串
public static String hashMapToJson(HashMap map) {
String string = "{";
for (Iterator it = map.entrySet().iterator(); it.hasNext();) {
Entry e = (Entry) it.next();
string += "'" + e.getKey() + "':";
string += "'" + e.getValue() + "',";
}
string = string.substring(0, string.lastIndexOf(","));
string += "}";
return string;
}

public static void JsonObject2HashMap(JSONObject jo, List> rstList) {
for (Iterator keys = jo.keys(); keys.hasNext();) {
try {
String key1 = keys.next();
System.out.println("key1---" + key1 + "------" + jo.get(key1)
+ (jo.get(key1) instanceof JSONObject) + jo.get(key1)
+ (jo.get(key1) instanceof JSONArray));
if (jo.get(key1) instanceof JSONObject) {

JsonObject2HashMap((JSONObject) jo.get(key1), rstList);
continue;
}
if (jo.get(key1) instanceof JSONArray) {
JsonArray2HashMap((JSONArray) jo.get(key1), rstList);
continue;
}
System.out.println("key1:" + key1 + "----------jo.get(key1):"
+ jo.get(key1));
json2HashMap(key1, jo.get(key1), rstList);

} catch (JSONException e) {
e.printStackTrace();
}
}
}
public static void JsonArray2HashMap(JSONArray joArr,
List> rstList) {
for (int i = 0; i < joArr.size(); i++) {
try {
if (joArr.get(i) instanceof JSONObject) {

JsonObject2HashMap((JSONObject) joArr.get(i), rstList);
continue;
}
if (joArr.get(i) instanceof JSONArray) {

JsonArray2HashMap((JSONArray) joArr.get(i), rstList);
continue;
}
System.out.println("Excepton~~~~~");

} catch (JSONException e) {
e.printStackTrace();
}

}

}
public static void json2HashMap(String key, Object value,
List> rstList) {
HashMap map = new HashMap();
map.put(key, value);
rstList.add(map);
}

}

㈦ 「JsonObject」如何轉成「Map」

首先,你先確認你的字元串是否是json格式的,如果是json格式,那你可以使用Gson.jar或json-lib-xx-jdk.jar兩個包來自動解析解析。

使用Gson更簡單些,只需要導入一個包就可以,但是他如果使用Object解析到int型的話或自動轉成double型,需要定義一個准確的類來解析,不能直接使用Object。示例:

Gson gson = new Gson();

Map<String, Object> map = new HashMap<String, Object>();

map = gson.fromJson(str, map.getClass());

GSON.jar包的下載地址:http://grepcode.com/snapshot/repo1.maven.org/maven2/com.google.code.gson/gson/2.2.4

使用json-lib包的話需要導入更多的包,需要額外導入commons-lang.jar、ezmorph-1.0.4.jar、commons-logging-1.1.1.jar、commons-collections.jar、commons-beanutils.jar這5個包。解析示例如下:

JSONObject jb = JSONObject.fromObject(str);

Map<String, Object> map = (Map<String, Object>)jb;

如果你的字元串不是json格式,那你就需要自己使用split分割字元串,例如:

String str = "color:red|font:yahei|width:800|height:300";

String[] strs = str.split("\|");

Map<String, String> m = new HashMap<String, String>();

for(String s:strs){

String[] ms = s.split(":");

m.put(ms[0], ms[1]);

}

㈧ JAVA中json字元串如何轉化為map對象獲取數據

我們需要先把json字元串轉化為net.sf.json.JSONObject對象,java中這樣就可以完成json字元串到Map的轉換了。

閱讀全文

與json字元串轉換成map相關的資料

熱點內容
哈爾濱市行政區劃代碼 瀏覽:716
如何顯示文件擴張 瀏覽:283
ps怎麼移植文件 瀏覽:443
傳奇補丁文件說明 瀏覽:513
奧維地圖怎麼設置網路疊加 瀏覽:407
linux載入庫文件so失敗 瀏覽:714
大家都想要的app 瀏覽:58
程序員比特幣 瀏覽:568
mysqlfrm是什麼文件 瀏覽:665
win10點擊文件夾聲音消失 瀏覽:963
蘋果手機空白文件名 瀏覽:833
linuxmv覆蓋合並文件夾 瀏覽:932
不開訪客網路怎麼聯網 瀏覽:631
win10的軟體卸載 瀏覽:779
crv汽車自帶網路怎麼打開 瀏覽:973
食品原材料到什麼網站購買 瀏覽:649
一年級的小孩子學編程怎麼樣 瀏覽:863
ic考勤機怎麼導出數據 瀏覽:922
網站設計編程如何開始學習 瀏覽:749
淘寶代碼隱藏導航不見了 瀏覽:7

友情鏈接