我有这个字符串:[{"row 0":[{},{},{},{},{},{},{},{}]},{"row 1":[{},{},{},{},{},{},{},{}]},{"row 2":[{},{},{},{},{},{},{},{}]},{"row 3":[{},{},{},{},{},{},{},{}]},{"row 4":[{"column 0":"WhitePawn"},{},{},{},{},{},{},{}]},{"row 5":[{},{},{},{},{},{},{},{}]},{"row 6":[{},{},{},{},{},{},{},{}]},{"row 7":[{},{},{},{},{},{},{},{}]}]^ 它目前是一个字符串,我们称之为string。我正在尝试将其转换为 JSON,如下所示:new JSONObject(string);但它不起作用。如何在 Java 中做到这一点?代码如下所示: private void parseMessageRedrawBoard(String message) { Log.d("0000: ", message); String trimmed = message.substring(message.indexOf("[")); Log.d("1111: ", trimmed); JSONObject jsonObject = null; try { jsonObject = new JSONObject(trimmed); Log.d("maybe worked...", "~"); } catch (Exception e) { Log.d("dammit: ", e.getMessage()); } }
1 回答
慕尼黑的夜晚无繁华
TA贡献1864条经验 获得超6个赞
您正在修剪字符串并将其转换为无效的 JSON。
您的 JSON 以“[”开头,表示它是一个数组。如果它以“{”开头,您可以假设它是一个对象。
因此,由于您的 JSON 是一个数组,因此您可以使用以下内容解析您提到的确切内容:
JSONArray jsonArray = new JSONArray(string);
并访问列表中的元素:
jsonArray.get(0);
添加回答
举报
0/150
提交
取消