(C+;+;)使用天气API 我现在正试图用C++显示我的树莓PI 3的天气预报。我试着到处寻找帮助,但找不到任何帮助

(C+;+;)使用天气API 我现在正试图用C++显示我的树莓PI 3的天气预报。我试着到处寻找帮助,但找不到任何帮助,c++,json,xml,raspberry-pi,openweathermap,C++,Json,Xml,Raspberry Pi,Openweathermap,所以目前,我正在尝试使用这个API 在该网站上,它指出: Forecast以JSON或XML格式提供 但是,我不知道如何使用它。有人能告诉我如何用C++在我的树莓PI 3上使用它吗?谢谢。 如果你要在C++中这样做,那么你需要找出至少三件事: 生成和处理HTTP请求 将返回的XML或JSON解析为程序可以输出的内容 格式化和显示输出(控制台?GUI?LCD显示器…?) 你真的,真的不想自己从一开始就实施这些,除非你有无限的时间。有用于发出HTTP请求的库(例如libcurl)和用于解析XML

所以目前,我正在尝试使用这个API

在该网站上,它指出:

Forecast以JSON或XML格式提供


但是,我不知道如何使用它。有人能告诉我如何用C++在我的树莓PI 3上使用它吗?谢谢。

如果你要在C++中这样做,那么你需要找出至少三件事:

  • 生成和处理HTTP请求
  • 将返回的XML或JSON解析为程序可以输出的内容
  • 格式化和显示输出(控制台?GUI?LCD显示器…?)
你真的,真的不想自己从一开始就实施这些,除非你有无限的时间。有用于发出HTTP请求的库(例如libcurl)和用于解析XML和JSON的库(libxml2等)。当然,您对显示所做的操作取决于您打算如何实现显示

因此,我建议第一步是看一些使用libcurl和libxml2的简单演示程序,并了解这些库是如何工作的


FWIW我有一些代码可以满足你的需要,基于BBC英国天气频道,我很乐意与你分享。但它是4000多行的C;虽然我不认为是最有效率的程序员,但应该给出一个概念,即应用程序是多么的不平凡,即使是图书馆在做大部分的繁重工作。

< P>如果你要在C++中这样做,那么你至少需要找出三件事:

  • 生成和处理HTTP请求
  • 将返回的XML或JSON解析为程序可以输出的内容
  • 格式化和显示输出(控制台?GUI?LCD显示器…?)
你真的,真的不想自己从一开始就实施这些,除非你有无限的时间。有用于发出HTTP请求的库(例如libcurl)和用于解析XML和JSON的库(libxml2等)。当然,您对显示所做的操作取决于您打算如何实现显示

因此,我建议第一步是看一些使用libcurl和libxml2的简单演示程序,并了解这些库是如何工作的


FWIW我有一些代码可以满足你的需要,基于BBC英国天气频道,我很乐意与你分享。但它是4000多行的C;虽然我并不认为自己是最有效率的程序员,但这应该让我了解应用程序的重要性,即使库承担了大部分繁重的工作。

您需要连接到它们的服务器,并使用HTTP协议发送请求,指定一个受支持的URL,然后服务器将发送包含JSON或XML文档的响应,您需要解析这些文档以提取请求的数据。@VTT抱歉,但我不理解您的意思,因为我是一个noob。请你再解释一下好吗。感谢您需要跳出noob类别:阅读一些,学习网络,特别是HTTP协议,检查JSON和XML格式规范,找出如何处理它们。如果你只是想让它以某种方式工作,那么你可能想使用一些对noob友好的语言,例如javascript或go。您需要连接到他们的服务器并使用HTTP协议发送请求,指定一个受支持的URL,然后服务器将发送包含JSON或XML文档的响应,您需要解析这些文档以提取请求的数据。@VTT抱歉,但我不明白您的意思,因为我是一个noob。请你再解释一下好吗。感谢您需要跳出noob类别:阅读一些,学习网络,特别是HTTP协议,检查JSON和XML格式规范,找出如何处理它们。如果您只是想让它以某种方式工作,那么您可能需要使用一些noob友好的语言,比如javascript或go。