【发布时间】:2018-10-13 20:43:41
【问题描述】:
我有这个字符串:
[{"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());
}
}
【问题讨论】:
-
怎么'不工作'?分享代码、错误、我们可以帮助您的方法,请记住,我们并不是您身边的人都知道
-
JSONLint 表示它是有效的 JSON。你有例外吗?
-
JSON 以
[开头,这意味着它是一个数组,而不是一个对象,因此请改用JSONArray。 -
@Andreas 好的,我接受你投了反对票,很荣幸你能告诉我原因
-
@Andreas 虽然其他人给出了正确的答案,但你知道我会如何索引它吗?
标签: java json serialization