c# - 如何在 C# 中将 HTTP Last-Modified header 从 UTC 解析为 DateTime

标签 c# http http-headers utc

我正在尝试从 HTTP 响应中的 Last-Modified header 中解析日期。

日期显示如下:

上次修改时间:2006 年 7 月 1 日星期六 01:50:55 UTC

我尝试了 DateTime.ParseDateTime.ParseExact 但没有成功。

最后那个 UTC 是什么东西,为什么 C# 不想解析它?

更新:

  • 我请求的服务器是 PWS/8.0.16,(我认为)是 Windows Personal Web Server...这台服务器可能是罪魁祸首。 (我很想知道这个服务器是什么)
  • 数据由 jpeg 图片组成。
  • Last-Modified header 的日期格式似乎并不总是相同。有时,它以 UTC 结束。其他使用 GMT。

最佳答案

使用ParseExact 指定输入格式:

string inputDate = "Sat, 01 Jul 2006 01:50:55 UTC";

DateTime time = DateTime.ParseExact(inputDate,
                    "ddd, dd MMM yyyy HH:mm:ss 'UTC'",
                    CultureInfo.InvariantCulture.DateTimeFormat,
                    DateTimeStyles.AssumeUniversal);

关于c# - 如何在 C# 中将 HTTP Last-Modified header 从 UTC 解析为 DateTime,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19146462/

相关文章:

json - Angular json 错误中的 Httpclient 请求

http - 获取没有内容长度的 http 请求的响应?

javascript - Chrome 开发工具未显示所有请求 header

java - 连接 3G 与 Wi-Fi 连接

c# - sqlite 数据库中的 EntityFramework 核心格式 DateTime

c# - 特性应该注入(inject)哪里?

c# - 使用 MVVM Light 时如何将弹出窗口绑定(bind)到 ViewModel - BindingExpression 路径错误

c# - 如何使用 C# 在回车时拆分字符串?

android - 如何将新成员添加到 Android 应用程序中的 MailChimp 列表?

php - WebHook 在支付系统中是如何工作的?