我有要解析的JSON文件。JSON文件(“ myfile”)的格式如下:
{ "LanguageLevels": { "1": "Początkujący", "2": "ŚrednioZaawansowany", "3": "Zaawansowany", "4": "Ekspert" } }
我想从语言级别检索键2的值(ŚrednioZaawansowany)。
import java.io.FileNotFoundException; import java.io.FileReader; import java.io.IOException; import java.util.Iterator; import org.json.simple.JSONArray; import org.json.simple.JSONObject; import org.json.simple.parser.JSONParser; import org.json.simple.parser.ParseException; public class JsonSimpleExample { public static void main(String[] args) { JSONParser parser = new JSONParser(); try { Object obj = parser.parse(new FileReader("myfile"); JSONObject jsonObject = (JSONObject) obj; JSONObject jsonChildObject = (JSONObject)jsonObject.get("LanguageLevels");
接下来做什么?我如何迭代呢?
也许您没有使用Java库的最新版本的JSON。
json-simple已有很长时间没有更新,而JSON-Java2个月前已更新。
json-simple
JSON-Java
JSON- Java可以在GitHub上找到,这是其仓库的链接:https : //github.com/douglascrockford/JSON- java
JSON- Java
切换库后,您可以在下面参考我的示例代码:
public static void main(String[] args) { String JSON = "{\"LanguageLevels\":{\"1\":\"Pocz\\u0105tkuj\\u0105cy\",\"2\":\"\\u015arednioZaawansowany\",\"3\":\"Zaawansowany\",\"4\":\"Ekspert\"}}\n"; JSONObject jsonObject = new JSONObject(JSON); JSONObject getSth = jsonObject.getJSONObject("LanguageLevels"); Object level = getSth.get("2"); System.out.println(level); }
并且作为JSON-Java开放源代码,您可以阅读代码及其文档,它们将指导您完成操作。
希望对您有所帮助。