我需要将以下字符串转换为秒数 我试着用下面的代码来做到这一点:
String sDuration = "00:00:24.20";
SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm:ss.SS");
videoLength = dateFormat.parse(sDuration);
Logger.debug("Duration: " + videoLength + " timestamp: " + videoLength.getTime());
但我得到的回应是:
Duration: Thu Jan 01 00:00:24 GMT 1970 timestamp: -3575980
第一个似乎没问题,但我需要 .getTime() 进行计算并且我得到一个负数? 我预计会得到 24200 之类的东西。
请您参考如下方法:
不完全确定 Date
是否打算用于持续时间(而不是时间点)。
这里有一个替代方法:
String[] hms = sDuration.split(":");
double sec = Integer.parseInt(hms[0]) * 3600
+ Integer.parseInt(hms[1]) * 60
+ Double.parseDouble(hms[2]);