我有一个字符串00:01:30.500
这相当于90500
毫秒。我尝试使用SimpleDateFormat
给出包括当前日期在内的毫秒数。我只需要毫秒级的字符串表示形式。我是否必须编写自定义方法来分割并计算毫秒?或者还有其他方法可以做到这一点吗?谢谢。
我尝试过如下:
String startAfter = "00:01:30.555";
SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm:ss.SSS");
Date date = dateFormat.parse(startAfter);
System.out.println(date.getTime());
您可以使用SimpleDateFormat
去做吧。你只需要知道两件事。
- 所有日期均以 UTC 内部表示
-
.getTime()
返回自 1970-01-01 00:00:00 UTC 以来的毫秒数。
package se.wederbrand.milliseconds;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.TimeZone;
public class Main {
public static void main(String[] args) throws Exception {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
sdf.setTimeZone(TimeZone.getTimeZone("UTC"));
String inputString = "00:01:30.500";
Date date = sdf.parse("1970-01-01 " + inputString);
System.out.println("in milliseconds: " + date.getTime());
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)