Android-将时间字符串与当前时间相减,然后转换为毫秒

Android-将时间字符串与当前时间相减,然后转换为毫秒,android,time,Android,Time,我对Java/Android开发有点陌生,我需要比较两次。其中一个时间值存储在字符串中,另一个是系统时间(long)的当前值-如何找出以毫秒为单位的两个时间之间的差异并将其存储为数字 编辑: 尝试#1(回应懒惰的忍者) 问题: 无法解决日期规则。java问题确定将字符串转换为日期时间: String dtStart = "09:27:37"; SimpleDateFormat format = new SimpleDateFormat("HH:mm:ss"); try {

我对Java/Android开发有点陌生,我需要比较两次。其中一个时间值存储在字符串中,另一个是系统时间(long)的当前值-如何找出以毫秒为单位的两个时间之间的差异并将其存储为数字

编辑:

尝试#1(回应懒惰的忍者)

问题:


无法解决日期规则。java问题

确定将字符串转换为日期时间:

String dtStart = "09:27:37";  
SimpleDateFormat  format = new SimpleDateFormat("HH:mm:ss");  
try {  
    Date date = format.parse(dtStart);  
 } catch (ParseException e) {  
    // TODO Auto-generated catch block  
    e.printStackTrace();  
}
然后把它转换成毫秒

long convertedLong = date.getTimeInMillis();
然后


从那里开始,时间长-转换长。

Long.parseLong(时间)可以吗?(有些东西告诉我,要得到当前系统时间和我的时间字符串值之间的差值,还必须有更多的内容,然后将其转换为毫秒。我的字符串不是以毫秒为单位的——它是标准格式(例如11:00),我无法在google或S.O上找到这样做的方法。因此,我把它作为一个新问题发布了!)@JamesLaur System.currentTimeMillis()的单位是毫秒,对吗?这就是为什么我说我假设字符串以毫秒为单位。不,我的字符串“时间”是标准格式的-我指的是我的字符串-我想与系统时间进行比较的字符串谢谢!我真的很感激!
long convertedLong = date.getTimeInMillis();
long currentTimeLong = System.currentTimeMillis(); // will get you current time in milli
long difference = currentTimeLong - convertedLong;
 String strDiff = String.valueOf(difference);