2015-04-02 64 views
0

我有以下代码Xamarin的Android短信保存

var context = Application.Context.ApplicationContext; 
var values = new ContentValues(); 
values.Put("address", "+27824318637"); 
values.Put("body", "Testing C"); 
values.Put("read", false); 
values.Put("date", "???"); 
context.ContentResolver.Insert(Uri.Parse("content://sms/inbox"), values); 

但是我不知道如何格式化当前日期时间, 我试过的ToString() 我试过(现在 - MINVALUE).TotalMiliSeconds 并且还Now.ToString(“ddMMyyhhmmss”)

没有给出在收件箱中正确的日期总是1970年1月2或1

+0

我不明白。你的'DateTime'值究竟在哪里,它的值是多少?格式化后你想要什么结果? – 2015-04-02 06:35:18

+0

DateTime是DateTime.Now 但我设法成功 – 2015-04-02 06:57:03

+0

那么,你如何准确地格式化它?格式化时你想要什么结果? – 2015-04-02 07:08:00

回答

0

我设法日期时间转换为Java.Util.Date成功这里是我的代码

private void SaveToInbox(ShortMessages shortMessage) 
    { 
     var now = shortMessage.MessageDate.HasValue ? shortMessage.MessageDate.Value : DateTime.Now; 
     var d = new Date((now.Year - 1900), now.Month - 1, now.Day, now.Hour, now.Minute, now.Second); 
     var context = Application.Context.ApplicationContext; 
     var values = new ContentValues(); 
     values.Put("address", shortMessage.From); 
     values.Put("body", shortMessage.Message); 
     values.Put("read", false); 
     values.Put("date", d.Time); 
     context.ContentResolver.Insert(Android.Net.Uri.Parse("content://sms/inbox"), values); 
    }