我是一名新的Java学习者。我正在尝试使用Intellij IDEA将Json文件解析为Java。但是,它没有显示正确的结果。
我总共使用了三个文件。 Main.java,parse.java和sample.json文件。
//Main.java
import com.google.gson.Gson;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.math.BigDecimal;
import java.util.*;
public class Main {
public static void main(String[] args) throws IOException{
Gson gson = new Gson();
parse.basicInfo info = gson.fromJson(new FileReader("C:\\Users\\" +
"Danniel\\Desktop\\UIUC\\gsonexample\\src\\test\\resources\\" +
"sample.json"), parse.basicInfo.class);
System.out.println(info.articles.get(0));
}
}
。
//prase.java
import java.util.*;
public class parse {
public class basicInfo{
String status;
String source;
String sortBy;
List<Article> articles = new ArrayList<Article>();
}
public class Article{
private String author;
private String title;
private String description;
private String url;
private String urlToImage;
private String publisedAt;
}
}
。
//sample.json
{
"status":"ok",
"source":"associated-press",
"sortBy":"top",
"articles":[
{
"author":"ALAN FRAM and DARLENE SUPERVILLE",
"title":"House vote condemning Trump's tweets draws some GOP support",
"description":"WASHINGTON (AP) — In a remarkable political repudiation, the Democratic-led U.S. House voted to condemn President Donald Trump's \"racist comments\" against four congresswomen of color, despite...",
"url":"https://apnews.com/36f5e67a145c4f0eb7661f2ca453b0a9",
"urlToImage":"https://storage.googleapis.com/afs-prod/media/00565d4c42fc43809d74a093acbd4108/3000.jpeg",
"publishedAt":"2019-07-17T13:36:08Z"
},
{
"author":"SCOTT BAUER",
"title":"Trump voters cringe and shrug at tweets while Democrats rage",
"description":"HELENVILLE, Wis. (AP) — Bill Brasch greeted President Donald Trump's latest tweet controversy with a shrug.He doesn't believe Trump was being racist for telling four congresswomen, all...",
"url":"https://apnews.com/dc5b20480ec14d1ea79e3c38ce78b1ff",
"urlToImage":"https://storage.googleapis.com/afs-prod/media/36c40d48417f4c3f8df11da735bad4b0/3000.jpeg",
"publishedAt":"2019-07-17T04:39:01Z"
}
]
}
通过表演
info.articles.get(0)
在Main.java中,我以为可以得到作者,标题,描述等的列表。但是,我得到了一些奇怪的输出,例如
parse$Article@5d3411d
当我执行“ info.status”或“ source”时,它对我来说很好用。谁能帮我吗?