我的 Android 手机有通话记录备份,我想知道通话的日期和时间。
日志说:
<HTCCALLOG>
new=1
numbertype=3
duration=28
number=PERSON'S PHONE NUMBER
type=1
_id=1853
numberlabel=null
name=PERSON'S NAME
date=1333119990954
问题来了。当我尝试转换日期时间(我正在使用 .Net 的 CSsharp)时,我得到以下日期 02/01/0001 01:01:51,这当然不是有效日期电话。
尝试将今天的日期和时间从 UTC 格式转换为长数字,我得到了 130134760479804654,它比日志文件中的数字更大。
有人可以指出我做错了什么吗?以下是代码。
long datelong = long.Parse("1333119793100");
DateTime date = new DateTime(datelong, DateTimeKind.Utc);
Console.WriteLine(date.ToString("dd/MM/yyyy hh:mm:ss"));
DateTime today = DateTime.Now;
Console.WriteLine("\n\n{0}\n{1}", today.ToFileTimeUtc(), datelong);
Console.ReadKey();
非常感谢
最佳答案
抱歉,我不太了解 Unix 词汇。 google了一下,发现现在是'epoch'时间,于是找到了一个转换函数:
public DateTime FromUnixTime(long unixTime)
{
var epoch = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc);
return epoch.AddSeconds(unixTime);
}
还是谢谢你
关于Android通话记录日期转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16640183/