草庐IT

ruby-on-rails - 在 iso8601 中输出 Ruby 持续时间

我希望在schema.org的ruby​​onrails中以iso8601格式输出持续时间。我已经知道如何在iso8601中输出时间戳了。例如video.created_at.iso8601我现在要做的是输出以下格式的内容:这是iso8601持续时间格式。您可以在http://en.wikipedia.org/wiki/ISO_8601#Durations阅读规范目前我正在strftime进行黑客攻击,但这并不理想...Time.at(@video.duration).strftime('PT%MM:%SS')希望有一个更优雅的解决方案。还有一个足够聪明,可以在需要时处理几个小时等。我

ruby-on-rails - 在 Ruby 中如何将 ISO 8601 日期转换为 UNIX 时间戳?

我一直在尝试Time.parse()和Date.parse(),但看不出来。我需要将“2007-12-3123:59:59”形式的日期转换为UNIX时间戳。PHP的strtotime()函数之类的东西会很完美。 最佳答案 您给出的示例的ISO8601时间格式为“2007-12-31T23:59:59”,而不是“2007-12-3123:59:59”(注意T在数据和时间组件之间)。在Ruby中,如果您需要time库,您可以解析格式正确的ISO8601日期。如果您的日期使用空格而不是T来分隔日期和时间,只需在将其传递给Time.iso8

ruby-on-rails - Ruby on Rails - YouTube API - 如何格式化持续时间 ISO 8601 (PT45S)

我到处搜索,似乎无法找到一个直接的答案。基本上,我调用YouTubeAPI并取回JSON文档,然后对其进行解析。其他一切都很好,但我不明白如何解析“持续时间”属性以将其显示为人类可读。“持续时间”字段显示为“PT1H5M34S”-1小时5分34秒或者它可以是“PT24S”——24秒或“PT4M3S”-4分3秒Ruby中必须有一种方法来解析这个字符串并使其易于阅读,这样我就可以在我的循环中即时传递持续时间并转换它。非常感谢任何帮助或指导。我试过使用Date.parse、Time.parse、Date.strptime以及许多其他东西......就像只是将PT从字符串中gsub-ing出来

c++ - 如何在 C++ 中构造 ISO 8601 日期时间?

我正在使用AzureRESTAPI,他们正在使用它来创建表存储的请求正文:DateTime.UtcNow.ToString("o")产生:2012-03-02T04:07:34.0218628Z它被称为“往返”,显然它是一个ISO标准(参见http://en.wikipedia.org/wiki/ISO_8601),但在阅读了wiki文章后我不知道如何复制它。有谁知道Boost对此有支持,或者可能Qt? 最佳答案 如果精确到秒的时间足够精确,可以使用strftime:#include#includeintmain(){time_tn

c++ - 如何在 C++ 中构造 ISO 8601 日期时间?

我正在使用AzureRESTAPI,他们正在使用它来创建表存储的请求正文:DateTime.UtcNow.ToString("o")产生:2012-03-02T04:07:34.0218628Z它被称为“往返”,显然它是一个ISO标准(参见http://en.wikipedia.org/wiki/ISO_8601),但在阅读了wiki文章后我不知道如何复制它。有谁知道Boost对此有支持,或者可能Qt? 最佳答案 如果精确到秒的时间足够精确,可以使用strftime:#include#includeintmain(){time_tn

go - 如何在golang中转换ISO 8601时间?

以下shell命令在golang中的等效代码是什么?date-u+%Y-%m-%dT%T%z 最佳答案 如果您正在寻找一个简单但不完美的解决方案,请考虑使用time.RFC3339常量。但也知道ISO8601之间的差异对于这个答案来说太复杂了。见https://ijmacd.github.io/rfc3339-iso8601/差异,还有一个方便的测试文件生成器来显示差异。这里也有关于SO的很好的讨论What'sthedifferencebetweenISO8601andRFC3339DateFormats?packagemainim

go - 如何在golang中转换ISO 8601时间?

以下shell命令在golang中的等效代码是什么?date-u+%Y-%m-%dT%T%z 最佳答案 如果您正在寻找一个简单但不完美的解决方案,请考虑使用time.RFC3339常量。但也知道ISO8601之间的差异对于这个答案来说太复杂了。见https://ijmacd.github.io/rfc3339-iso8601/差异,还有一个方便的测试文件生成器来显示差异。这里也有关于SO的很好的讨论What'sthedifferencebetweenISO8601andRFC3339DateFormats?packagemainim

php - 如何使用 PHP 将日期显示为 iso 8601 格式

我正在尝试使用PHP将我的MySQL数据库中的日期时间显示为iso8601格式的字符串,但它出现了错误。2008年10月17日出现为:1969-12-31T18:33:28-06:00,这显然不正确(年份应该是2008年而不是1969年)这是我正在使用的代码:$post[3]是我的MySQL数据库中的日期时间(CURRENT_TIMESTAMP)。有什么想法吗? 最佳答案 date的第二个参数是UNIX时间戳,而不是数据库时间戳字符串。您需要将数据库时间戳转换为strtotime. 关于

php - 如何使用 PHP 将日期显示为 iso 8601 格式

我正在尝试使用PHP将我的MySQL数据库中的日期时间显示为iso8601格式的字符串,但它出现了错误。2008年10月17日出现为:1969-12-31T18:33:28-06:00,这显然不正确(年份应该是2008年而不是1969年)这是我正在使用的代码:$post[3]是我的MySQL数据库中的日期时间(CURRENT_TIMESTAMP)。有什么想法吗? 最佳答案 date的第二个参数是UNIX时间戳,而不是数据库时间戳字符串。您需要将数据库时间戳转换为strtotime. 关于

python - 如何将 ISO 8601 日期时间字符串转换为 Python 日期时间对象?

这个问题在这里已经有了答案:HowdoIparseanISO8601-formatteddate?(28个回答)关闭8年前。我得到一个格式为“2009-05-28T16:15:00”的日期时间字符串(我相信这是ISO8601)。一个hackish选项似乎是使用time.strptime解析字符串并将元组的前六个元素传递给datetime构造函数,例如:datetime.datetime(*time.strptime("2007-03-04T21:08:12","%Y-%m-%dT%H:%M:%S")[:6])我还没有找到一种“更清洁”的方式来做到这一点。有吗?