android studio中存放json檔案,獲取assets檔案下下檔案,獲取本地json檔案並解析
轉自http://blog.csdn.net/yanxiaosa/article/details/70859927
以前看過這些知識,今天用到的時候,發現自己忘記了,都不知道assets資料夾在哪個目錄下。百度了一下,assets目錄和java目錄是同一個級別的。
我們右擊assets目錄新建File,起名”dynamic.json”,然後我們在檔案中寫一些json資料:
{"dynamic":[
{
"username":"燕瀟灑",
"createTime":"04-23 13:12",
"commentNum":"45",
"content":"喔喔喔",
"headIcon":"http://img2.imgtn.bdimg.com/it/u=1576185143,2361770572&fm=214&gp=0.jpg" ,
"images":"http://img4.imgtn.bdimg.com/it/u=3776739438,757564394&fm=214&gp=0.jpg",
"level":"公告",
"priseNum":"23"
},
{
"username":"徐金傑",
"createTime":"04-23 13:12",
"commentNum":"45",
"content":"哩哩裡",
"headIcon":"http://img4.duitang.com/uploads/item/201508/17/20150817142843_4smWc.jpeg" ,
"images":"http://pic.58pic.com/58pic/13/70/90/29358PICQjG_1024.jpg",
"level":"公告",
"priseNum":"43"
},{
"username":"宋亮亮",
"createTime":"04-23 13:12",
"commentNum":"23",
"content":"咕咕咕",
"headIcon":"http://img2.imgtn.bdimg.com/it/u=1576185143,2361770572&fm=214&gp=0.jpg",
"images":"http://img1.3lian.com/2015/w7/85/d/21.jpg" ,
"level":"重要",
"priseNum":"12"
},
{
"username":"唐夢茹",
"createTime":"04-23 13:12",
"commentNum":"450",
"content":"喵喵喵",
"headIcon":"http://img4.duitang.com/uploads/item/201508/17/20150817142843_4smWc.jpeg",
"images":"http://img4.imgtn.bdimg.com/it/u=3776739438,757564394&fm=214&gp=0.jpg",
"level":"公告",
"priseNum":"345"
},{
"username":"米述林",
"createTime":"04-23 13:12",
"commentNum":"333",
"content":"咪咪咪",
"headIcon":"http://www.haopic.me/wp-content/uploads/2015/12/2015122808171644.jpg",
"images":"http://img1.3lian.com/2015/w7/85/d/21.jpg",
"level":"重要",
"priseNum":"323"
},{
"username":"馮大雙",
"createTime":"04-23 13:12",
"commentNum":"322",
"content":"麼麼噠",
"headIcon":"http://img.bitscn.com/upimg/allimg/c160120/1453262U560940-A5c.jpg",
"images":"http://img1.3lian.com/2015/w7/85/d/21.jpg",
"level":"重要",
"priseNum":"222"
},{
"username":"施偉",
"createTime":"04-23 13:12",
"commentNum":"12",
"content":"啦啦啦",
"headIcon":"http://www.haopic.me/wp-content/uploads/2015/12/2015122808171644.jpg",
"images":"http://img1.hq2011.com/uploads/allimg/150131/0122205Y4-0.jpg",
"level":"公告",
"priseNum":"4"
},{
"username":"宋佳利",
"createTime":"04-23 15:45",
"commentNum":"23",
"content":"呵呵呵",
"headIcon":"http://scimg.jb51.net/allimg/170330/2-1F3301636200-L.jpg",
"images":"http://img1.3lian.com/2015/w7/85/d/21.jpg",
"level":"公告",
"priseNum":"12"
},{
"username":"楊永剛",
"createTime":"04-23 13:16",
"commentNum":"12",
"content":"嘻嘻嘻",
"headIcon":"http://www.qqw21.com/article/UploadPic/2016-2/20162192155654059.jpg",
"images":"http://img1.hq2011.com/uploads/allimg/150131/0122205Y4-0.jpg",
"level":"公告",
"priseNum":"1"
},{
"username":"程森然",
"createTime":"04-22 14:12",
"commentNum":"22",
"content":"哈哈哈",
"headIcon":"http://img2.imgtn.bdimg.com/it/u=1576185143,2361770572&fm=214&gp=0.jpg",
"images":"http://pic.58pic.com/58pic/13/70/90/29358PICQjG_1024.jpg",
"level":"重要",
"priseNum":"23"
}
]
}
那麼,怎麼讀到這些資料呢?使用系統的方法:
public static String getJson(String fileName,Context context) {
//將json資料變成字串
StringBuilder stringBuilder = new StringBuilder();
try {
//獲取assets資源管理器
AssetManager assetManager = context.getAssets();
//通過管理器開啟檔案並讀取
BufferedReader bf = new BufferedReader(new InputStreamReader(
assetManager.open(fileName)));
String line;
while ((line = bf.readLine()) != null) {
stringBuilder.append(line);
}
} catch (IOException e) {
e.printStackTrace();
}
return stringBuilder.toString();
}
這個時候,如果我們要把字串轉換成Object的話:
JSONObject jsonObject = new JSONObject(str);
然後通過正常的轉換,獲取其中的JSONArray或者直接轉成物件:
//將讀出的字串轉換成JSONobject
JSONObject jsonObject = new JSONObject(str);
//獲取JSONObject中的陣列資料
jsonArray = jsonObject.getJSONArray(arrName);
如果我們使用Gson解析的話:
Type listType = new TypeToken<List<SearchCompanyResultBean>>() {
}.getType();
//這裡的json是字串型別 = jsonArray.toString();
List<SearchCompanyResultBean> list = new Gson().fromJson(json, listType );
這裡我的實體類是SearchCompanyResultBean。
通過Gson將json陣列轉換成list集合
有了資料來源,然後在設定到ui上
相關推薦
android studio中存放json檔案,獲取assets檔案下下檔案,獲取本地json檔案並解析
轉自http://blog.csdn.net/yanxiaosa/article/details/70859927 以前看過這些知識,今天用到的時候,發現自己忘記了,都不知道assets資料夾在哪個目錄下。百度了一下,assets目錄和java目錄是同一個級別的。 我
android studio中編輯的文字框EditText以及文字框輸入內容的獲取方法
首先需要在佈局中加入如下內容,這樣一個文字框就有了 <EditText android:id="@+id/edit_text"//設定唯一的標識,呼叫時可通過id找到它 android:layout_width="match_pare
Android Studio中的控制元件初始化疑問:build沒問題,但執行模擬器時出現問題。錯誤程式碼:java.lang.RuntimeException: Unable to instant
在使用Android Studio,啟動模擬器時,出現如下錯誤:Logcat中的資訊如下:java.lang.RuntimeException:Unable to instantiate activityComponentInfo{com.example.dcyyw.appl
Android Studio中匯入aar依賴時,需要修改的檔案
需要在build.gradle檔案中新增如下紅色部分apply plugin: 'com.android.application' android { compileSdkVersion 27 defaultConfig { applicationId
開始Android,Android studio 中部分檔案目錄的含義與作用
Android studio 中部分檔案目錄的含義與作用 java MainActivity.java主檢視 res 資原始檔的配置檔案 layout 佈局檔案 AndroidManifest.xm
Android Studio中新增整體的activity類檔案,重新編譯後提示“程式包R不存在”解決
問題描述: 做新功能模組開發,新增兩個寫好的activity類檔案,資原始檔和jave都整合好了,最後 Rebuild Project的時候編譯的message裡面出現“程式包R不存在”提示 解決辦
Android Studio 中的FindBugs插件使用,輕松幫你發現Bug (轉)
程序員 roi 捕獲 cas inter 常量 接下來 多線程 ndb 在日常開發過程中難免會因為一時疏忽而留下一些Bug,這些Bug就是埋在程序裏的定時炸彈,如果不能及時鏟除就會導致程序的不穩定,異常或閃退的現象,從而導致用戶的體驗的下降。那麽怎麽才能找出這些埋在程序
Android Studio中 so、jar檔案的打包及使用
一 載入so檔案 平臺:windows IDE :Android Studio 下載好ndk:下載地址 https://developer.android.com/ndk/downloads/index.html 第1步:新
Android中JNI使用詳解(3)---Android Studio中SO檔案生成
Android中JNI使用詳解(2)---Android Studio中SO檔案生成 上一篇寫到過在Android Studio中配置NDK環境地址:Android Studio中NDK環境配置 這篇文章講解在Android Studio中
Emulator 28.0.19 釋出,Android Studio 中的模擬器
Emulator 28.0.19 在 Canary 和 Dev channel 都可用了,Emulator 是 Android Studio 中的模擬器。 主要更新如下: Fixed an issue in macOS 10.14+ where t
android studio中setContentView時R.layout 找不到已存在的佈局檔案
在res/layout 資料夾內已經寫好了佈局檔案:XXX_layout.xml,但是在activity裡寫setContentView(R.layout.……)的時候,不會提示XXX_layout,而且,自己手動填寫了XXX_layout,還會報錯,找不到該佈局檔案。查詢資料後,順利解決問題,隨手
Android Studio中如何獲取sha1證書指紋資料debug.keystore
無論是百度地圖還是高德地圖,都需要在相關的開放平臺上新增SHA1這一過程,那麼如何在Android studio上找到這個指紋證書呢? 方法如下: 1.在自己c盤目錄下找到debug.keystore檔案:  
Emulator 28.0.20 釋出,Android Studio 中的模擬器
Emulator 28.0.20 stable 釋出了,此版本更新如下: Fixed freeze on snapshot load on Windows with certain models of Intel GPUs. Fixed unauthori
android studio中編譯單個檔案
網上搜到比較全的是這個:https://blog.csdn.net/u011368551/article/details/51980678 另外關於gradle如何編譯單個檔案,參考 https://blog.csdn.net/xcookies/article/details/79238456,但
android studio中修改快捷鍵以及實用的開發快捷鍵,方便技巧
直接上圖,看了就明白: 1.開啟設定---->keymap 2.選擇哪個型別的快捷鍵,本人是eclipse過來的,還是沿用eclipse; 3.這裡是搜尋功能的地方,比如我要看程式碼格式化,就在這輸入“reformat code”,就會跳到具體的設定; 4.你只知道
Android studio中檢視Device File Explorer,並使用sqlit3對資料庫進行操作
首先確保手機與電腦進行連線,手機屬於開發者模式。開啟Android studio找到view,點選view找到“Tool Windows ”,將滑鼠指向“Tool Windows”後找到"Device File Explorer".點選後就可以進行檢視。若想對其中的sqlit
Android獲取assets資料夾下的json資料,並Gson解析!
Json 資料如下{ "code": 200, "msg": "ok", "news": [ { "title": "空降美國的孩子", "content": "在壓力和青春期的情緒波動
Android Studio中寫了一個工具類,進行測試時在Manifest.xml中寫
這是包,utils下的HttpUtils是工具類 在Manifest.xml檔案下寫<instrumentation時報錯,<instrumentation></instrumentation>部分程式碼如下:<instrumentati
Android Studio中呼叫高於minSdkVersion版本API, 無提示 (Lint問題),開啟api版本檢測
一. 坑: 呼叫高於minSdkVersion版本的API時, AS無提示 ! 最近重構專案時用到了HandlerThread類, 程式碼中呼叫了此類的quitSafely()方法, 結果導致了下面的錯誤: 呼叫高版本api導致的crash.png 經過一番折騰,
如何在Android Studio中設定*md檔案開啟方式
最近在Android Studio中寫一些Demo的時候,會順便在裡面建立一個.md檔案用來進行Demo筆記的書寫。然而Android Studio不帶有markdown預覽功能,所以我就琢磨如何在Android Studio中點選對應檔案時,自動開啟對應的編輯