【发布时间】:2018-06-19 12:22:02
【问题描述】:
将 Java 代码更改为 Kotlin 代码。这是 Kotlin,我认为以前的 json 解析不起作用。它在 Java 中工作。那么,有什么办法呢?
包 io.github.taehoon02.dimibob 导入 android.os.AsyncTask 导入 org.json.JSONException 导入 org.json.JSONObject 导入 java.io.BufferedReader 导入 java.io.IOException 导入 java.io.InputStreamReader 导入 java.net.HttpURLConnection 导入 java.net.MalformedURLException 导入 java.net.URL 导入 java.text.SimpleDateFormat 导入 java.util.* 类餐:AsyncTask(){ 变量数据 = "" var早餐=“” var 午餐 = "" var晚餐=“” var小吃=“” 覆盖有趣的 doInBackground(可变参数:无效):无效? { 尝试 { val 今天:日历 = Calendar.getInstance() val 格式 = SimpleDateFormat("yyyyMMdd").format(today.time) val url = URL("https://api.dimigo.in/dimibobs/" + 格式) val httpURLConnection = url.openConnection() as HttpURLConnection val inputStream = httpURLConnection.inputStream val bufferedReader = BufferedReader(InputStreamReader(inputStream)) var 行:字符串? = "" 而(行!= null){ line = bufferedReader.readLine() 数据 += 行 } val jsonObject = JSONObject(数据) 早餐 = jsonObject.get("早餐") 作为字符串 午餐 = jsonObject.get("午餐") 作为字符串 晚餐 = jsonObject.get("晚餐") 作为字符串 零食 = jsonObject.get("snack") 作为字符串 } 捕捉(e:MalformedURLException){ e.printStackTrace() } 捕捉(e:IOException){ e.printStackTrace() } 捕捉(e:JSONException){ e.printStackTrace() } 返回空 } }【问题讨论】:
-
“不工作”究竟是什么意思?
-
好像不是json解析的。构建会正常,但应用程序将被终止。