![《Android移動(dòng)應(yīng)用開發(fā)》JSON數(shù)據(jù)解析_第1頁(yè)](http://file4.renrendoc.com/view/d5545047f9479943d74faad4b8966053/d5545047f9479943d74faad4b89660531.gif)
![《Android移動(dòng)應(yīng)用開發(fā)》JSON數(shù)據(jù)解析_第2頁(yè)](http://file4.renrendoc.com/view/d5545047f9479943d74faad4b8966053/d5545047f9479943d74faad4b89660532.gif)
![《Android移動(dòng)應(yīng)用開發(fā)》JSON數(shù)據(jù)解析_第3頁(yè)](http://file4.renrendoc.com/view/d5545047f9479943d74faad4b8966053/d5545047f9479943d74faad4b89660533.gif)
![《Android移動(dòng)應(yīng)用開發(fā)》JSON數(shù)據(jù)解析_第4頁(yè)](http://file4.renrendoc.com/view/d5545047f9479943d74faad4b8966053/d5545047f9479943d74faad4b89660534.gif)
![《Android移動(dòng)應(yīng)用開發(fā)》JSON數(shù)據(jù)解析_第5頁(yè)](http://file4.renrendoc.com/view/d5545047f9479943d74faad4b8966053/d5545047f9479943d74faad4b89660535.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
JSON2023/9/28142023/9/28認(rèn)識(shí)JSONJSON核心解析類目錄CONTENT12JSON解析工具:Gson3參考教材:《Android應(yīng)用開發(fā)項(xiàng)目化教程》認(rèn)識(shí)JSON特點(diǎn)JSON(JavaScriptObjectNotation)是一種輕量級(jí)的數(shù)據(jù)交換格式。具有良好的可讀和便于快速編寫的特性,同時(shí)也易于機(jī)器解析和生成,非常適合于服務(wù)器與客戶端的交互。JSON采用與編程語(yǔ)言無(wú)關(guān)的文本格式,業(yè)內(nèi)主流技術(shù)為其提供了完整的解決方案(有點(diǎn)類似于正則表達(dá)式),從而可以在不同平臺(tái)間進(jìn)行數(shù)據(jù)交換。JSON采用兼容性很高的文本格式,同時(shí)也具備類似于C語(yǔ)言體系的行為。1認(rèn)識(shí)JSON數(shù)據(jù)結(jié)構(gòu)MapMap結(jié)構(gòu)也稱為對(duì)象,以鍵值對(duì)的形式給出,鍵和值之間用“:”隔開,兩個(gè)Map之間用“,”隔開,一般表示形式如下: {'key1':'value1','key2':'value2'}1認(rèn)識(shí)JSON數(shù)據(jù)結(jié)構(gòu)ArrayArray就是普通意義上的數(shù)組,一般形式如下:
['arr1','arr2','arr3'];1認(rèn)識(shí)JSON數(shù)據(jù)格式對(duì)象(Object):一個(gè)對(duì)象以“{”開始,并以“}”結(jié)束。一個(gè)對(duì)象包含一系列非排序的鍵值對(duì),每個(gè)鍵值對(duì)之間使用“,”分隔。名稱-值(Collection):名稱和值之間使用“:”隔開,一般的形式是:{name:value}。數(shù)組(Array):使用[]包含所有元素,每個(gè)元素用逗號(hào)分隔,元素可以是任意的Value字符串(String):以""括起來(lái)的一串字符。數(shù)值(Number):一系列0-9的數(shù)字組合,可以為負(fù)數(shù)或者小數(shù)。布爾值(Boolean):表示為true或者false。1JSON核心解析類org.jsonAndroid的JSON解析部分都在包org.json下,提供:JSONObjectJSONStringerJSONArrayJSONTokenerSONExceptionJSONStringJSONWriterJSONReader2JSON核心解析類org.jsonJSONObjectJSONObject是一個(gè)無(wú)序的鍵值對(duì)的集合,可以看作是一個(gè)JSON對(duì)象,這是系統(tǒng)中有關(guān)JSON定義的基本單元。它的外在形式是一個(gè)用大括號(hào)包裹,并用冒號(hào)將名字和值分開的字符串。內(nèi)部形式就是一個(gè)對(duì)象。JSONObject提供了一系列的get、set和opt方法來(lái)訪問(wèn)JSONObject實(shí)例。這些值的類型可以是Boolean、JSONArray、JSONObject、Number、String或者默認(rèn)值JSONObject.NULL對(duì)象。2JSON核心解析類org.jsonJSONStringerJSONStringer是JSON文本構(gòu)建類,用于幫助快速和便捷的創(chuàng)建JSON文本。其最大的優(yōu)點(diǎn)在于可以減少由于格式的錯(cuò)誤而導(dǎo)致程序異常,引用這個(gè)類可以自動(dòng)嚴(yán)格按照J(rèn)SON語(yǔ)法規(guī)則創(chuàng)建JSON文本。每個(gè)JSONStringer實(shí)體只能對(duì)應(yīng)創(chuàng)建一個(gè)JSON文本。2JSON核心解析類org.jsonJSONArrayJSONArray代表一組有序的數(shù)值。表現(xiàn)形式是用方括號(hào)包裹,數(shù)值以逗號(hào)","分隔(例如:[value1,value2,value3])。這個(gè)類的內(nèi)部同樣具有查詢行為,通過(guò)get()和opt()兩種方法都可以根據(jù)index索引返回指定的數(shù)值,put()方法用來(lái)添加或者替換數(shù)值。這個(gè)類和JSONObject支持相同的數(shù)據(jù)類型。2JSON核心解析類org.jsonJSONTokenerJSONTokener是系統(tǒng)為JSONObject和JSONArray構(gòu)造器的解析類,它可以從源信息中提取數(shù)值信息。2JSON核心解析類org.jsonSONExceptionJSONException是類拋出的異常信息。當(dāng)語(yǔ)法錯(cuò)誤或者過(guò)程異常的時(shí)候,會(huì)拋出JSONException異常。以下情況下會(huì)產(chǎn)生JSONException:試圖解析或構(gòu)建一個(gè)格式錯(cuò)誤的JSON文檔。使用null作為關(guān)鍵詞。使用不提供給JSON數(shù)值類型,如NaN或無(wú)窮大的。使用不存在的鍵進(jìn)行查找。類型不匹配的解析。2JSON核心解析類org.jsonJSONStringJSONString是一個(gè)接口,以便其他類可以通過(guò)實(shí)現(xiàn)該接口的toString()方法來(lái)改變JSONObject、JSONArray等內(nèi)部toString()方法的功能,以實(shí)現(xiàn)他們自己的序列化。2JSON核心解析類org.jsonJSONWriterJSONWriter位于android.util包下,是一個(gè)快速將JSON文本寫入數(shù)據(jù)流的工具。每次只能輸出一個(gè)字符串。流中既包括文字值(字符串、數(shù)字、布爾值和空值),也包括作為對(duì)象、數(shù)組的開始和結(jié)束標(biāo)志的分隔符。2JSON核心解析類org.jsonJSONObjectJsonReader位于android.util包下,主要用來(lái)讀取JSON字符串的內(nèi)容。2JSON解析工具:Gson來(lái)源Gson是Google提供的一個(gè)輕量級(jí)的JSON轉(zhuǎn)換類庫(kù),在Java平臺(tái)可以方便的將一個(gè)Java對(duì)象轉(zhuǎn)換成JSON格式,也可以將JSON格式的字符串轉(zhuǎn)換成Java對(duì)象。3JSON解析工具:Gson核心類Gson使用Gson的主類,構(gòu)造Gson類的實(shí)例后,可使用toJson(Object)方法將Bean里面的內(nèi)容轉(zhuǎn)換為JSON內(nèi)容,使用fromJson(String,Class)方法將JSON對(duì)象封裝出一個(gè)一個(gè)的Bean對(duì)象。3JSON解析工具:Gson核心類GsonBuilder用于創(chuàng)建Gson的實(shí)例,和使用newGson()不同的是,GsonBuilder可進(jìn)行
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2031年中國(guó)黑砂電藥鍋行業(yè)投資前景及策略咨詢研究報(bào)告
- 2025至2031年中國(guó)野菊花枕行業(yè)投資前景及策略咨詢研究報(bào)告
- 2025年紙面碗機(jī)項(xiàng)目可行性研究報(bào)告
- 2025至2031年中國(guó)電腦顯示板行業(yè)投資前景及策略咨詢研究報(bào)告
- 2025年海綿麥克風(fēng)套項(xiàng)目可行性研究報(bào)告
- 2025年普通整流管芯片項(xiàng)目可行性研究報(bào)告
- 2025至2031年中國(guó)帶棚架松式絡(luò)筒機(jī)行業(yè)投資前景及策略咨詢研究報(bào)告
- 2025年室內(nèi)型電子顯示屏幕項(xiàng)目可行性研究報(bào)告
- 2025年噸包裝機(jī)項(xiàng)目可行性研究報(bào)告
- 2025至2031年中國(guó)丁維鈣粉行業(yè)投資前景及策略咨詢研究報(bào)告
- 2024-2025學(xué)年深圳市南山區(qū)六年級(jí)數(shù)學(xué)第一學(xué)期期末學(xué)業(yè)水平測(cè)試試題含解析
- 2024-2030年中國(guó)免疫細(xì)胞存儲(chǔ)行業(yè)市場(chǎng)發(fā)展分析及競(jìng)爭(zhēng)形勢(shì)與投資戰(zhàn)略研究報(bào)告
- 工貿(mào)行業(yè)企業(yè)安全生產(chǎn)標(biāo)準(zhǔn)化建設(shè)實(shí)施指南
- 機(jī)械基礎(chǔ)(少學(xué)時(shí))(第三版) 課件全套 第0-15章 緒論、帶傳動(dòng)-氣壓傳動(dòng)
- T-CACM 1560.6-2023 中醫(yī)養(yǎng)生保健服務(wù)(非醫(yī)療)技術(shù)操作規(guī)范穴位貼敷
- 07J912-1變配電所建筑構(gòu)造
- 鋰離子電池串并聯(lián)成組優(yōu)化研究
- 人教版小學(xué)數(shù)學(xué)一年級(jí)下冊(cè)第1-4單元教材分析
- JTS-215-2018碼頭結(jié)構(gòu)施工規(guī)范
- 大酒店風(fēng)險(xiǎn)分級(jí)管控和隱患排查治理雙體系文件
- 財(cái)務(wù)實(shí)習(xí)生合同
評(píng)論
0/150
提交評(píng)論