C#datetime时间转换

2025-04-27 20:32:07
推荐回答(4个)
回答1:

你所说的毫秒数1248671343262是将DateTime对象通过方法ToFileTimeUtc或ToFileTime转换成的Windows文件时间(一个 64 位值),它表示自协调世界时 (UTC) 公元 (C.E.) 1601 年 1 月 1 日午夜 12:00 以来已经过的间隔数(以 100 纳秒为一个间隔)。Windows 使用文件时间记录应用程序创建、访问或写入文件的时间。
首先将其反向转换成DateTime对象:
DateTime dt = DateTime.FromFileTimeUtc(1248671343262);
也可以将其先转换成long ticks(刻度为100纳秒),
long ticks = 1248671343262 / 100;
DateTime dt = new DateTime(ticks);
再通过格式转换:
dt.GetDateTimeFormats('r')[0].ToString();
//Tue, 02 Jan 1601 10:41:07 GMT
再看看GMT和CST之间的区别,做些调整。

回答2:

DateTime.FromFileTimeUtc(1248671343262)

这样可以转换成日期类型的,,剩下的你自己随便怎么转了

回答3:

private void button1_Click(object sender, EventArgs e)
{
long inputNum = long.Parse(this.textBox1.Text);
long Ticks = inputNum / 100;
DateTime dTime = new DateTime(Ticks);
this.textBox2.Text = dTime.ToUniversalTime().ToString();
}

回答4:

好奇怪的需求啊