2015-04-02 58 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); 
    }