如何在 C# 中将毫秒转换为日期格式?
在 C# 中,如何将 Unix 风格的时间戳转换为 yyyy-MM-ddThh:mm:ssZ?
In C# how can I convert Unix-style timestamp to yyyy-MM-ddThh:mm:ssZ?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(9)
首先将毫秒转换为
TimeSpan
:现在,在 .NET 4 中,您可以使用格式字符串参数调用
.ToString()
。请参阅 http://msdn.microsoft.com/en-us/ library/system.timespan.tostring.aspx在以前版本的 .NET 中,您必须从 TimeSpan 的属性手动构造格式化字符串。
Start by converting your milliseconds to a
TimeSpan
:Now, in .NET 4 you can call
.ToString()
with a format string argument. See http://msdn.microsoft.com/en-us/library/system.timespan.tostring.aspxIn previous versions of .NET, you'll have to manually construct the formatted string from the TimeSpan's properties.
new DateTime(numTicks * 10000)
DateTime(长刻度) 构造函数是你需要什么。每个刻度代表 100 纳秒,因此乘以 10000 即可得到 1 毫秒。
new DateTime(numTicks * 10000)
The DateTime(long ticks) constructor is what you need. Each tick represents 100 nanoseconds so multiply by 10000 to get to 1 millisecond.
如果毫秒基于 UNIX 纪元时间,那么您可以使用:
If the milliseconds is based on UNIX epoch time, then you can use:
这对我有用:
如果需要,您可以从中获取日期时间。
This worked for me:
You can get just the DateTime from that if you need it.
干得好:
Here you go:
此示例将演示总体思路,但您需要知道开始日期是 DateTime.MinValue 还是其他值:
This sample will demonstrate the general idea, but you need to know if your starting date is DateTime.MinValue or something else:
您可以根据刻度构建日期时间:
You can construct your datetime from ticks:
这个问题应该有您需要的答案。
简短版本:
This question should have the answer you need.
Short version: