【问题标题】:How to check the real date through an internet connection如何通过互联网连接查看真实日期
【发布时间】:2014-03-14 11:35:58
【问题描述】:

我在使用 C++ 从 time.windows.com 获取在线日期时遇到问题。 我只是想从 C++ 中获得在线时间的标签。

我得到了参考,但我不知道如何转换成 C++ 代码。 http://nickstips.wordpress.com/2010/02/12/c-get-nist-internet-time/http://tf.nist.gov/tf-cgi/servers.cgi

请帮帮我

【问题讨论】:

    标签: c++ windows date


    【解决方案1】:

    rdate 是一个简单的网络协议,但您可能会发现很少有服务器提供此功能。

    另一种可行的方法是使用来自 HTTP 服务器 See section 14.18 的 Date 标头。这是httpdate 的一篇文章,它使用了这种方法。

    最后,SNTP 并没有那么难使用。它比成熟的 NTP 简单。

    【讨论】:

      【解决方案2】:

      答案可能并不像您想象的那么简单。 基本上您可以采取三种方法:

      1. NTP server 获取日期/时间。 这种方法基本上意味着通过套接字连接到服务器(检查thisthis),或使用现有的C++ 库,如net-snmpsnmp++this SNTP implementation

      2. 获取显示此值的 HTML 页面并解析它以获得您的值。最好为此使用现有的 HTML 解析器,例如 TinyXPath。我不会走这条路,因为它不必要地复杂。

      3. 使用像earthtools 这样的网络服务。您将在 URL 中传递必要的参数,并收到 XML 响应,然后您可以对其进行解析。

      我意识到这些解决方案都不像您希望的那样简单,但是当仅限于 C++ 时,我目前能想到的只有它们。

      【讨论】:

      • 嗯,我是 C++ 编程的新手,我无法完全理解……我的 C++ 无法检测#include 的套接字事物,我该如何尝试?
      • Windows 套接字编程与 Linux 不同。在线搜索有关 Windows 的 c++ 套接字编程的资源,有很多。但是,如果您是初学者,我建议您使用其中一个库。
      【解决方案3】:

      如果它对那里的某人有帮助,我有一个个人方法,它确实适用于我的日期和时间检查目的(使用 C++),不需要太精确(它用于跟踪大致多少天)非付费客户使用我的软件等)

      我有一个带有单行 PHP 脚本 (echo date("d-m-Y")) 的 Web 服务器,我在 C++ 代码中使用 WinHTTP 调用它;解析结果字符串,瞧!

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-02-26
        • 1970-01-01
        • 1970-01-01
        • 2015-01-02
        • 2019-08-19
        • 1970-01-01
        相关资源
        最近更新 更多