Java 中,如果你想将时间字符串(格式如 HH:mm:ss.SSS
,其中 HH
表示小时,mm
表示分钟,ss
表示秒,SSS
表示毫秒)转换成自午夜以来的毫秒数,可以使用 SimpleDateFormat
和 Calendar
类来实现。这里是一个具体的示例:
示例代码
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
public class TimeToMilliseconds {
public static void main(String[] args) {
String timeString = "12:34:56.789"; // 示例时间字符串
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss.SSS");
try {
// 解析时间字符串
Date date = sdf.parse(timeString);
// 获取 Calendar 实例并设置解析得到的时间
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
// 计算自午夜以来的毫秒数
long milliseconds = calendar.get(Calendar.HOUR_OF_DAY) * 3600000
+ calendar.get(Calendar.MINUTE) * 60000
+ calendar.get(Calendar.SECOND) * 1000
+ calendar.get(Calendar.MILLISECOND);
System.out.println("Milliseconds since midnight: " + milliseconds);
} catch (Exception e) {
e.printStackTrace();
}
}
}