阅读JSON内容

Chr*_*mag 15 java gson jsoup

我正在使用jsoup来抓取一些HTML数据,而且效果很好.现在我需要提取一些JSON内容(只有JSON,而不是HTML).我可以使用jsoup轻松完成此操作,还是必须使用其他方法?jsoup执行的解析是对JSON数据进行编码,因此它无法使用Gson正确解析.

谢谢!

Bal*_*usC 22

虽然很棒,但Jsoup是一个HTML解析器,而不是JSON解析器,因此在这种情况下它是无用的.如果您尝试过,Jsoup会将返回的JSON隐式放入a <html><head>等等.你不想拥有它. Gson是一个JSON解析器,所以你肯定需要它.

您的具体问题可能是您不知道如何提供将JSON返回给Gson的URL.在这种情况下,您需要使用它URL#openStream()来获取InputStream它并用于InputStreamReader将其装饰成Reader最终可以被Gson#fromJson()接收到的接收器Reader.

InputStream input = new URL("http://example.com/foo.json").openStream();
Reader reader = new InputStreamReader(input, "UTF-8");
Data data = new Gson().fromJson(reader, Data.class);
// ...
Run Code Online (Sandbox Code Playgroud)