datetime - 如何在 F# 中将 DateTime 转换为 Unix TimeStamp?

标签 datetime f# unix-timestamp

是否有一个函数/库/简单的代码片段可以做到这一点?

例如,我找到了 Python 的答案,但没有找到 F# 的答案

我在这里找到了另一条路 http://tryfs.net/snippets/snippet-r6

open System

let toDateTime (timestamp:int) = 
    let start = DateTime(1970,1,1,0,0,0,DateTimeKind.Utc) 
    start.AddSeconds(float timestamp).ToLocalTime()

最佳答案

您应该小心,因为 timestamp 可能不是 int。但是在 .NET 4.6.x 中,您应该能够使用注释中提到的函数。

.NET 4.6.2

这是一个例子:

open System
let unix = DateTimeOffset(DateTime.Now).ToUnixTimeSeconds() //val unix : int64 = 1488254491L
let dt =  DateTimeOffset.FromUnixTimeSeconds(unix)  //val dt : DateTimeOffset = 2017/02/28 4:01:31 +00:00
dt.LocalDateTime //val it : DateTime = 2017/02/28 13:01:31

由于 ToUnixTimeSecondsFromUnixTimeSecondsDateTimeOffset 上运行,因此可以使用它或来回转换为 DateTime如有必要。

顺便说一句,我发现在 .fsx 文件中,这些方法的智能感知有点不稳定(但有效)。在 .fs 文件中没关系。

关于datetime - 如何在 F# 中将 DateTime 转换为 Unix TimeStamp?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42498772/

相关文章:

python pandas日期时间转换为日期

python - 在 Python 中,如何将自纪元以来的秒数转换为 `datetime` 对象?

sorting - 基于脚本的 Elasticsearch 日期字段排序

arrays - F#中数组的元素乘法

c# - 如何使用反射创建 Action<T>,其中 T 是发现的通用类型

f# - 如何确定两种类型之间的单一属性差异?

mysql - 选择本周创建的所有行(从周日开始)

java - 如何在 Java 中将 YMD LDAP 时间戳转换为日期时间?

python-3.x - 按特定月份切片

mysql - 时间戳更新为零