如何使用strptime将毫秒的时间戳字符串转换为时间对象

Tam*_*ock 1 ruby ruby-on-rails strptime

我需要使用strptime以毫秒为单位的时间戳字符串转换为 Time 对象。

解决方法是使用parse

t= Time.parse('29 Sep 2013 12:25:00.367')
=> 2013-09-29 12:25:00 -0400
Run Code Online (Sandbox Code Playgroud)

但是我的代码使用非常重要strptime,因为我希望能够通过函数传递多种类型的格式,包括:“HH:MM”、“HH”等。

我可以用这样的纳秒来做到这一点:

Time.strptime("12:34:56:789434", "%H:%M:%S:%N")
=> 2016-03-16 12:34:56 +0100
Run Code Online (Sandbox Code Playgroud)

我想要这样的东西:

Time.strptime("12:34:56:789", "%H:%M:%S:%[insert magic letter that represent milliseconds]")
Run Code Online (Sandbox Code Playgroud)

我的想法是,也必须有一种方法可以用毫秒来完成。

有可能吗?

Dha*_*udi 5

试试%L

请参阅 Ruby 的DateTime文档。