在C#中解析unix时间
有没有办法在 C# 中快速/轻松地解析 Unix 时间?我对这门语言是全新的,所以如果这是一个非常明显的问题,我很抱歉。 IE 我有一个格式为 [自纪元以来的秒数].[毫秒] 的字符串。 C# 中是否有与 Java 的 SimpleDateFormat 等效的方法?
Is there a way to quickly / easily parse Unix time in C# ? I'm brand new at the language, so if this is a painfully obvious question, I apologize. IE I have a string in the format [seconds since Epoch].[milliseconds]. Is there an equivalent to Java's SimpleDateFormat in C# ?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(9)
最简单的方法可能是使用类似的东西:
需要注意的三件事:
DateTime
构造函数中指定 UTC,以确保它不会认为它是本地时间。DateTimeOffset
而不是DateTime
。Simplest way is probably to use something like:
Three things to note:
DateTime
constructor to make sure it doesn't think it's a local time.DateTimeOffset
instead ofDateTime
.这是 C# 中人们经常做的事情,但没有相应的库。
我创建了这个迷你库 https://gist.github.com/1095252 来让我的生活变得美好(我希望你的也是)更容易。
This is a very common thing people in C# do, yet there is no library for that.
I created this mini library https://gist.github.com/1095252 to make my life (I hope yours too) easier.
来源:http://www.codeproject.com/KB/cs/timestamp.aspx
Surce: http://www.codeproject.com/KB/cs/timestamp.aspx
我意识到这是一个相当老的问题,但我想我应该发布我的解决方案,该解决方案使用 Nodatime 的 Instant 类,其中 有一个专门用于此目的的方法。
我完全明白,也许加入 Nodatime 对某些人来说可能会很沉重。对于我的项目,依赖性膨胀不是主要问题,我宁愿依赖维护的库解决方案,而不必维护自己的解决方案。
I realize this is a fairly old question but I figured I'd post my solution which used Nodatime's Instant class which has a method specifically for this.
I totally get that maybe pulling in Nodatime might be heavy for some folks. For my projects where dependency bloat isn't a major concern I'd rather rely on maintained library solutions rather than having to maintain my own.
从 .NET 4.6 开始,您可以使用
DateTimeOffset.FromUnixTimeSeconds()
和DateTimeOffset.FromUnixTimeMilliseconds()
:Since .NET 4.6, you can use
DateTimeOffset.FromUnixTimeSeconds()
andDateTimeOffset.FromUnixTimeMilliseconds()
:这是来自 Stefan Henke 的博客文章< /a>:
This is from a blog posting by Stefan Henke:
MSDN DateTime 文档万岁!另请参阅TimeSpan。
Hooray for MSDN DateTime docs! Also see TimeSpan.
这是一个方便的扩展方法
Here it is as a handy extension method