2012-03-12 179 views
4

我用安卓:轉換日期爲毫秒

SimpleDateFormat formatter = new SimpleDateFormat("dd.MM.yyyy, HH:mm"); 
String time = formatter.format(new Date()); 

得到的時間(12.03.2012,17:31),現在我想這個時候毫秒轉換,因爲我有一對夫婦一個文件日期和文字,我希望將日期轉換以毫秒爲單位,使我不能使用

ContentValues values = new ContentValues(); 
values.put("address", "123"); 
values.put("body", "tekst"); 
values.put("read", 1); 
values.put("date", HERE I MUST PUT A DATE IN MILLISECONDS);  
context.getContentResolver().insert(Uri.parse("content://sms/inbox"), values); 

添加在收件箱中的文本,因爲我必須投入毫秒的時間我必須轉換的時候,沒有人知道如何?

+4

一個簡單的谷歌搜索會所做的工作,只是說。 – 2012-03-12 16:40:18

回答

23

最簡單的方法是將Date類型轉換爲毫秒:

SimpleDateFormat formatter = new SimpleDateFormat("dd.MM.yyyy, HH:mm"); 
formatter.setLenient(false); 

Date curDate = new Date(); 
long curMillis = curDate.getTime(); 
String curTime = formatter.format(curDate); 

String oldTime = "05.01.2011, 12:45"; 
Date oldDate = formatter.parse(oldTime); 
long oldMillis = oldDate.getTime(); 
+1

你沒有理解我,我知道這一點。我想要轉換和我有的舊時間,而不是從當前時間獲得毫秒。比方說,我有一個時間05.01.2011,12:45,並想要轉換它,如何? – Gabrijel 2012-03-12 21:36:02

+0

@Gabrijel好吧,我現在明白了。我更新了我的答案,包括你之後的內容 – 2012-03-13 09:09:38

+0

'long oldMillis = oldDate.getTime()'這隻會將'12:45'轉換爲毫秒,而不是'05.01.2011,12:45'! – 2014-10-23 07:17:34

2

使用你的約會對象,然後調用date.getTime()

0

如果你想在米利斯當前時間只是使用System.currentTimeMillis()

+0

OP不在尋找當前的毫秒數,而是從現有的日期。 – Gangadhar 2012-03-13 07:11:50

0

使用。 getMillis();

e.g:

DateTime dtDate = new DateTime(); 
dtDate.getMillis() 
0
String Date = "Tue Apr 25 18:06:45 GMT+05:30 2017"; 
SimpleDateFormat sdf = new SimpleDateFormat("EEE MMM dd HH:mm:ss z yyyy"); 
try { 
    Date mDate = sdf.parse(Date); 
    long timeInMilliseconds = mDate.getTime(); 

} catch (ParseException e) { 
      e.printStackTrace(); 
}