当前位置: 首页 > 面试题库 >

读取JSON内容

南宫保臣
2023-03-14
问题内容

我正在使用jsoup抓取一些HTML数据,效果很好。现在,我需要提取一些JSON内容(仅JSON,而不是HTML)。我可以使用jsoup轻松做到这一点,还是必须使用另一种方法来做到这一点?jsoup执行的解析是对JSON数据进行编码,因此无法使用Gson正确解析。

谢谢!


问题答案:

虽然很棒,但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);
// ...


 类似资料:
  • 问题内容: 我的Unix机器上有文件test.json,其数据如下 现在,我正在编写 REST jersey客户端 以读取test.json并显示如下输出 如何阅读test.json并显示其内容? 问题答案: 对于: 对于: 您的数据将在对象内部

  • 问题内容: 假设对于API的每个响应,我都需要将响应中的值映射到Web应用程序中的现有json文件,并显示json中的值。在这种情况下,读取json文件的更好方法是什么?require或fs.readfile。请注意,可能同时有成千上万的请求。 请注意,我不希望在运行时对文件进行任何更改。 问题答案: 我想您将JSON.parse JSON文件进行比较,在这种情况下会更好,因为它将立即解析该文件并

  • 就像在tring-to-use-spring-boot-rest-to-read-json-string-from-post中一样,我希望从Spring RestController中的POST请求中读取json负载。使用内容类型“text/plain”没有问题,但是使用“application/json”,反序列化失败,我得到一个MessageNotReadable异常。但实际上内容再简单不过了

  • 我已经按照下面的链接使用spring的Swagger为我的REST服务创建API文档。 http://jakubstas.com/spring-jersey-swagger-configuration/#comment-1726 一切都很顺利,但当我试图使用url http://localhost:8080/rest/api-docs访问swagger的api文档时,我发现无法读取swagger

  • 我正在尝试使用Boost来解析JSON文件。这是 JSON 文件 和一个MWE 问题:我目前知道如何读取最外层的变量<code>a。然而,我在阅读其他级别(如<code>b_a、b_b_a和b_d_a</code>等)时遇到了困难。如何使用Boost实现这一点?我不一定要寻找涉及循环的解决方案,只是想弄清楚如何“提取”内部变量。 如果其他库是最佳的,我愿意使用它们。但是到目前为止,Boost在我看