【问题标题】:What is an easy way to parse a date Http Header in C?在 C 中解析日期 Http Header 的简单方法是什么?
【发布时间】:2012-08-06 02:04:49
【问题描述】:

我想解析一个电子邮件 http 日期标头,有没有一种简单的方法可以在不编写我自己的字符串解析函数的情况下做到这一点?

例子:

Date: Fri, 19 Mar 2010 11:44:02 -0700

为了澄清,解析出Date: 部分很容易,我在谈论实际的日期字符串。理想情况下,id 喜欢获取纪元时间。

【问题讨论】:

  • 实际上,它并不完全是重复的,因为该问题暗示格式不固定 - 在这种情况下它是。

标签: c http parsing email date


【解决方案1】:

如果它在您的目标系统(例如 Linux)中可用,您可以使用 strptime

【讨论】:

  • 如果不是,这里还有其他选择:stackoverflow.com/questions/1414155/…
  • 为什么这是一个公认的答案?它有什么帮助?您可以使用strptime 的事实并没有多大帮助,但找到strptime 的正确参数集可能是实际的答案。
  • strptime格式字符串为"%a, %d %b %Y %H:%M:%S"
【解决方案2】:

libcurl 也有一个功能:

time_t curl_getdate(char *datestring, time_t *now );

如果你不想链接整个库,你可以从这里复制代码:https://github.com/curl/curl/blob/master/lib/parsedate.c

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-07-06
    • 1970-01-01
    • 1970-01-01
    • 2010-09-05
    • 2017-02-11
    • 2011-02-08
    • 1970-01-01
    相关资源
    最近更新 更多