從json文件中讀取內容方法(kotlin)

從文件中讀取內容轉成json字符串

//從文件中讀取內容轉成json字符串
    private fun file2JsonStr(fileName: String): String? {
        val stringBuilder = StringBuilder()
        try {
            val assetManager: AssetManager = getApplication<Application>().assets

            val isr = InputStreamReader(assetManager.open(fileName))
            val bf = BufferedReader(isr)
            var line: String?
            while (bf.readLine().also { line = it } != null) {
                stringBuilder.append(line)
            }
            bf.close()
            isr.close()
            return stringBuilder.toString()
        } catch (e: IOException) {
            e.printStackTrace()
        }
        return null
    }

json字符串轉列表

 //json字符串轉列表
    private fun jsonStr2List(jsonStr: String?): ArrayList<JsonBean> {
        val list = ArrayList<JsonBean>()
        val data = JSONArray(jsonStr)
        val gson = Gson()
        for (i in 0 until data.length()) {
            val entity: JsonBean =
                gson.fromJson(data.optJSONObject(i).toString(), JsonBean::class.java)
            list.add(entity)
        }
        return list
    }

引用方法示例如下:
//xxxx.json是文件名,通常放在assesst文件夾下面

val jsonStr = file2JsonStr("xxxx.json")
val dataList = jsonStr2List(jsonStr)

獲取到了dataList 信息之後,就可以使用dataList .xxx獲取你需要的數據了

json文件放置位置
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章