我有一个' {'在开头,这是我的json文件
{
"Rooms": [
{"x":1},
{"y":1}
]
}
也许它无法读取文件? 这是我的代码:
JSONTokener tokener = new JSONTokener("res/MAP.JSON");
JSONObject test = new JSONObject(tokener);
答案 0 :(得分:5)
JSONTokener tokener = new JSONTokener("res/MAP.JSON");
这不会从文件res/MAP.JSON
中读取。这会尝试将字符串"res/MAP.JSON"
标记为JSON。由于该字符串不是JSON,因此不起作用。
如果您想从文件中读取,请尝试传入java.io.FileReader
:
JSONTokener tokener = new JSONTokener(new FileReader("res/MAP.JSON"));
答案 1 :(得分:0)
来自http://www.json.org/javadoc/org/json/JSONTokener.html
" JSONTokener获取源字符串并从中提取字符和标记。它由JSONObject和JSONArray构造函数用于解析JSON源字符串。"
JSONTokener
没有为您阅读该文件。它只是标记你提供的字符串。
您提供的JSON有问题。
使用JsonLint
验证您的JSON:http://www.jsonlint.com
它有助于查看MAP.JSON的内容。