json介紹與解析
json介紹
基本概念
JavaScript Object Notation符號
基於JavaScript語言的輕量級的資料交換格式;
即:用來傳輸資料的一種格式.
json物件
名(鍵)值對(name:value)
例:
{name1:value1,name2:value2......}
鍵值對的順序無所謂
json陣列
只是這麼叫,並不等同於Object[]我們平時使用的陣列概念
[value1,value2,value3,...]
json解析
解析方式有org.json,Gson,fastJson等。。。
org.json解析
* 當json字串以”{“開始,用JSONObject解析
* 當json字串以”[“開始,用JSONArray解析
應為我比較喜歡用Gson,所以只介紹Gson解析
User.java
public class User {
private String name;
private int age;
public User() {
}
public User(String name, int age) {
super();
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public String toString() {
return "User [name=" + name + ", age=" + age + "]";
}
}
用org.json解析String json = “{name:’zhangsan’,age:20}”;
String json = "{"name": "李四", "age": 20}";
JSONObject object = new JSONObject(json);
String name = object.getString("name");
int age = object.getInt("age");
System.out.println(name + " " + age);
User user = new User(name, age);
System.out.println(user);
列印結果為:User [name=李四 , age=20 ]
json解析(Gson)
Gson解析簡介
Gson 是 Google 提供的用來在 Java 物件和 JSON 資料之間進行對映的 Java 類庫。可以將一個 JSON 字串轉成一個 Java 物件,或者反過來。
Gson類的常用方法
- 1.< T > T fromJson(String json,Class clz):將json字串轉成一個類的物件形式
- 2.String toJson(Object obj):將一個javabean類或者集合的物件轉成json字串的形式
舉例
String json = "{name:'zhangsan',age:20}";
Person p =new Gson().fromJson(json, Person.class);
Person類中定義了name,age屬性
用Gson解析String json = “{name:’zhangsan’,age:20}”;
String json = "{"name": "李四", "age": 20}";
// 1、建立一個Gson物件
Gson gson = new Gson();
// 2、解析字串. User.class : 1、必須有無參的構造方法 2、每個屬性必須提供setter getter方法
// 3、類的屬性要和json格式的字串中的鍵值對要匹配
User user = gson.fromJson(json, User.class);
System.out.println(user);
列印結果為:User [name=李四 , age=20 ]
注意: 在用GSON/fastjson解析時,javabean中的屬性名和資料型別一定要跟json字串中的完全一樣!
相關推薦
json介紹與解析
json介紹 基本概念 JavaScript Object Notation符號 基於JavaScript語言的輕量級的資料交換格式; 即:用來傳輸資料的一種格式. json物件 名(鍵)值對(name:value) 例: {
Java-Socket通訊 同時JSON傳遞與解析
服務端 import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; import java.io.InputStreamReader; import java.io.O
Unity序列化之XML,JSON--------合成與解析【轉載】
尊重原創,轉載請註明出處,謝謝! 最近在學熱更新,涉及到資源熱更,所以就瞭解了XML,JSON相關的東西。這方面網上資料還是比較多的,所以這裡主要是總結一下基本使用方法和一些應用的Demo。 1.先介紹一下 XML 和 JSON 是什麼東西吧? (1
深入理解JVM虛擬機器4:Java class介紹與解析實踐
深入理解JVM虛擬機器4:Java class介紹與解析實踐 轉自https://juejin.im/post/589834a20ce4630056097a56 前言 身為一個java程式設計師,怎麼能不瞭解JVM呢,倘若想學習JVM,那就又必須要了解Class檔案,Class之
json生成與解析例項
重點類:JsonWriter,JsonRead,JSONObject,JSONTokener,JSONArray. 流程: 1. 首先在MainActivity.java類中的四個按鈕對應的是 前面兩個是利用JsonParserUtil.java這個類來生成或者解析j
Json打包與解析
package com.example.global; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import o
Unity序列化之XML,JSON--------合成與解析
public void CreateXML() { //xml儲存的路徑,注意路徑。 string filepath = "E:/my.xml"; //繼續判斷當前路徑下是否有該檔案 if(!File.Exists (filepath)) { //建立
Qt之JSON生成與解析
簡述 Qt5 中包含了處理 JSON 的類,均以 QJson 開頭(例如:QJsonDocument、QJsonArray、QJsonObject),在 QtCore 模組中,不需要額外引入其它模組。 常用的 JSON 庫 json.org 中介紹了 JSON 在各種語
Qt 之 JSON 生成與解析
簡述 Qt5 中包含了處理 JSON 的類,均以 QJson 開頭(例如:QJsonDocument、QJsonArray、QJsonObject),在 QtCore 模組中,不需要額外引入其它模組。 | 常用的 JSON 庫 json.org 中介紹
JSON數據的生成與解析
turn sco 個數 學生 jar包 網上 get main gets JSON數據的生成與解析。首先先到網上下載一個json jar包,我用的是org.json 演示樣例代碼: package json; import org.json.JSONA
android 訪問web端與解析json,模擬用戶登錄
android用戶登錄 與解析json數據 之前寫過一個java web端的登錄驗證,最後返回一個json字符串。字符串格式如下:{"appmsg":"賬號或密碼錯誤","appcode":0,"_default_boolean_a":false}今天就結合著Android來寫一個簡單的登錄。註意:
json數據的拼接與解析
span pda json數據 bbb data XML art pom .json json數據格式 [{ "firstName": "Brett", "lastName":"McLaughlin", "email": "aaaa" }, { "firstName":
Unity3d數據存儲 PlayerPrefs,XML,Json數據的存儲與解析
文件 windows play toe creat 擁有 add key值 判斷 今天來復習一下數據存儲方面的基礎知識,Unity3d中常用的數據存儲方式有Unity自帶的PlayerPrefs, XML文檔, Json文檔,還有常用的輕量級數據庫SQL, 涉及的瑣碎知識非
python解析HTML之:PyQuery庫的介紹與使用
att 用法 hello ext dom 的人 inf 目標 title 本篇大部分轉載於https://www.jianshu.com/p/c07f7cd1b548 先放自已自己解析techweb一個網站圖片的代碼 from pyquery import PyQuery
iOS開發之JSON格式數據的生成與解析
添加 json intern 對象 RM use convert mail value 我們為什麽要用JSON格式的數據? JSON格式取代了xml給網絡傳輸帶來了很大的便利,但是卻沒有了xml的一目了然,尤其是json數據很長的時候,我們會陷入繁瑣復雜的數據節點查找中。
C++ Jsoncpp原始碼編譯與解析Json
1.Json 資料表示方式介紹 這個可以看之前的一個文章裡面有說明:Java解析(讀取)Json資料 2.C++ Jsoncpp 2.1 Jsoncpp介紹 (1)JsonCpp主要包含三種類型的class:Value Reader Writer; Json::V
關於Qt中QJsonObject、QJsonArray生成與解析JSON檔案
使用QJsonArray寫檔案: QString fileName = ":load.json"; QFile srcFile(fileName); if(!srcFile.open(QFile::ReadWrite)){ &
關於json封裝與前臺解析(商城標籤的封裝與前端解析展示資訊)
關於json封裝與前臺解析 本文以自己寫的商城專案一個小模組為例,servlet裡通過呼叫相應的方法得到一個list集合的商品物件,通過一定的規則封裝json,然後傳送到前臺頁面,前臺頁面經過解析json資料,遍歷資料將資料資訊展示在前端介面中。 通過前端傳來的相應
Java 6---JSON的使用與解析
導讀 1.簡介 2.JSON解析 簡介 JSON解析 如上圖右擊複製在專案中的jar包,按圖操作便匯入了jar包,匯入後會多出下圖的檔案目錄,如果想刪除,可以右擊這個多出來的檔案,如圖 fastJson解析JSON
Xamarin.Android下獲取與解析JSON
一、新建專案 1.新建一個Android專案,並命名為為NetJsonList 2.右擊引用,選擇新增引用,引用System.Json.dll 二、同步請求 既然是跨平臺,我們自然不能按照java下的方式進行編寫,否則如何跨平臺呢,所以我們需要使用Syste.Net名稱空間下的兩個類: