0

我已经像这样输入了更早的时间段,2012-01-18-11-42-24 在数据库中,所以如何将这个时间转换为毫秒,我很困惑,我尝试了很多方法但无法得到这个时间以毫秒为单位。

我的最终目标是找出时间段 2012-04-18-11-42-24 时间和当前时间。请给出这样的想法,如何?

4

4 回答 4

0

请查看DateFormatSimpleDateFormat类。他们有一个parse(String string)方法可以从它的表示中给你一个Date对象String。然后,您可以使用getTime()方法以毫秒为单位获取时间并进行比较。

于 2012-04-18T07:06:46.753 回答
0

尝试这个,

public long convertDateToMillis(int day, int month, int year, int hour, int minute)
{
       Calendar c = Calendar.getInstance();
       c.set(year, month, day, hour, minute, 00);    
       return c.getTimeInMillis();    
}
于 2012-04-18T07:03:50.800 回答
0
 SimpleDateFormat outputFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 
 Date c_date=new Date(); //current date 
 Date saved_date=(Date)outputFormat.parse("2012-01-18-11-42-24");   //saved date
 long diffInMs = c_date.getTime() -saved_date.getTime();  //diff between two in milisecond
 long diffInSec = TimeUnit.MILLISECONDS.toSeconds(diffInMs);  //millisecond to second convertion

您可以使用与 saved_date 相同的第二个日期而不是当前日期,并且以相同的方式查找两个日期之间的时间段

于 2012-04-18T07:12:35.483 回答
0

使用此代码以毫秒为单位获取时间

Date  date1 = new Date(datepicker.getYear() - 1900, datepicker.getMonth(), datepicker.getDayOfMonth(), timepicker.getCurrentHour()*3600000, timepicker.getCurrentMinute()*60000);
Log.i(TAG, date1.toString());
于 2012-04-18T07:18:05.220 回答