c語言json轉map(c# 對象轉換json)

本文目錄一覽:

「JsonObject」如何轉成「Map」?

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

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

Gson gson = new Gson();

MapString, Object map = new HashMapString, Object();

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

GSON.jar包的下載地址:

使用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);

MapString, Object map = (MapString, Object)jb;

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

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

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

MapString, String m = new HashMapString, String();

for(String s:strs){

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

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

}

JSONObject json = JSONObejct.fromObject(map)

上面的方法轉出來的結果為map的key.toString()和value.toString() 的結果對。

SomeClass 是你的自定義類,你沒有重寫toString方法,默認調用的是Object類的toString方法。

你重寫下SomeClass 的toString方法,輸出你想要的結果,然後,轉出來的JSON就不再是內存地址了

怎麼把json字符串轉換成map

在升級QQ登錄到OAuth2.0時,其返回的是一個json形式的字符串,將其轉換成Map

Gson gson = new GsonBuilder().excludeFieldsWithoutExposeAnnotation().create();

Gson gson = new Gson();

String json 如下;

{ “ret”:0, “msg”:””, “nickname”:”xxx”, “figureurl”:””, “figureurl_1″:””, “figureurl_2″:””, “gender”:”xxx”, “vip”:”0″, “level”:”0″, “is_yellow_year_vip”:”0″ }

Map infoMap = gson.fromJson(json, new TypeTokenMapString, String(){}.getType());

如何將返回的JSon字符串用MAP格式讀取

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

1.將數組轉換為JSON:String[] arr = {“asd”,”dfgd”,”asd”,”234″};JSONArray jsonarray = JSONArray.fromObject(arr);System.out.println(jsonarray);

2.對象轉換成JSON:UserInfo user = new UserInfo(1001,”張三”);JSONArray jsonArray = JSONArray.fromObject(user);System.out.println( jsonArray );

3.把Map轉換成json, 要使用jsonObject對象:MapString, Object map = new HashMapString, Object();map.put(“userId”, 1001);map.put(“userName”, “張三”);map.put(“userSex”, “男”);JSONObject jsonObject = JSONObject.fromObject(map);System.out.println(jsonObject);

4.把List轉換成JSON數據:ListUserInfo list = new ArrayListUserInfo();UserInfo user = new UserInfo(1001, “張三”);list.add(user);list.add(user);list.add(user);JSONArray jsonArray = JSONArray.fromObject(list);System.out.println(jsonArray);

5.

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/246461.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-12 13:15
下一篇 2024-12-12 13:15

相關推薦

  • AES加密解密算法的C語言實現

    AES(Advanced Encryption Standard)是一種對稱加密算法,可用於對數據進行加密和解密。在本篇文章中,我們將介紹C語言中如何實現AES算法,並對實現過程進…

    編程 2025-04-29
  • 學習Python對學習C語言有幫助嗎?

    Python和C語言是兩種非常受歡迎的編程語言,在程序開發中都扮演着非常重要的角色。那麼,學習Python對學習C語言有幫助嗎?答案是肯定的。在本文中,我們將從多個角度探討Pyth…

    編程 2025-04-29
  • Python被稱為膠水語言

    Python作為一種跨平台的解釋性高級語言,最大的特點是被稱為”膠水語言”。 一、簡單易學 Python的語法簡單易學,更加人性化,這使得它成為了初學者的入…

    編程 2025-04-29
  • OpenJudge答案1.6的C語言實現

    本文將從多個方面詳細闡述OpenJudge答案1.6在C語言中的實現方法,幫助初學者更好地學習和理解。 一、需求概述 OpenJudge答案1.6的要求是,輸入兩個整數a和b,輸出…

    編程 2025-04-29
  • Python按位運算符和C語言

    本文將從多個方面詳細闡述Python按位運算符和C語言的相關內容,並給出相應的代碼示例。 一、概述 Python是一種動態的、面向對象的編程語言,其按位運算符是用於按位操作的運算符…

    編程 2025-04-29
  • JSON的MD5

    在Web開發過程中,JSON(JavaScript Object Notation)是最常用的數據格式之一。MD5(Message-Digest Algorithm 5)是一種常用…

    編程 2025-04-29
  • 使用Java將JSON寫入HDFS

    本篇文章將從以下幾個方面詳細闡述Java將JSON寫入HDFS的方法: 一、HDFS簡介 首先,先來了解一下Hadoop分佈式文件系統(HDFS)。HDFS是一個可擴展性高的分佈式…

    編程 2025-04-29
  • 面向對象編程、類和對象

    面向對象編程(Object-Oriented Programming, OOP)是一種編程方法,它將現實世界中的事物抽象為對象(Object),對象的屬性和方法被封裝成類(Clas…

    編程 2025-04-29
  • Python語言由荷蘭人為中心的全能編程開發工程師

    Python語言是一種高級語言,很多編程開發工程師都喜歡使用Python語言進行開發。Python語言的創始人是荷蘭人Guido van Rossum,他在1989年聖誕節期間開始…

    編程 2025-04-28
  • Python語言設計基礎第2版PDF

    Python語言設計基礎第2版PDF是一本介紹Python編程語言的經典教材。本篇文章將從多個方面對該教材進行詳細的闡述和介紹。 一、基礎知識 本教材中介紹了Python編程語言的…

    編程 2025-04-28

發表回復

登錄後才能評論