我想打印特定json文件中的所有json对象。我的函数接收一个字符串,该字符串是我的项目中json的路径。movieListJSON是我的json的路径。
这是我的文件夹结构:
templates
*fetchIMDB.java
*Movie.class
movies.json
这就是我目前所尝试的,但我没有找到打开json并按键迭代值的方法。
public void fetchIMDBMovies(String movieListJSON, String outputDir) throws IOException {
//
JSONObject jsonObject;
System.out.println(movieListJSON);
JSONParser parser = new JSONParser();
InputStream in = getClass().getResourceAsStream(movieListJSON);
}
我的json文件看起来像:
[
{
"movie_name": "Avatar"
},
{
"movie_name": "Star Wars VII: The Force Awakens"
},
{
"movie_name": "Pirates of the Caribbean: At World's End"
},
{
"movie_name": "Spectre"
},
{
"movie_name": "The Dark Knight Rises"
}
]
如何获取值为movie_name的所有json并使用System.out.println((打印它们;
我想打印电影名称(json中movie_name的值(
这是解决方案。
输入文件的路径,而不是'your-path'
。如果您使用Intelij Idea
,您可以通过Right click on file + Copy path... + Copy relative path
(或完整路径,根据您的意愿(获取
try {
JSONArray array = (JSONArray) new JSONParser().parse(new FileReader("your-path"));
for (Object temp : array) {
JSONObject jsonObject = (JSONObject) temp;
System.out.println(jsonObject.get("movie_name"));
}
} catch (IOException | ParseException e) {
e.printStackTrace();
}