- 12小时制转24小时制
try {
SimpleDateFormat displayFormat = new SimpleDateFormat("HH:mm");
SimpleDateFormat parseFormat = new SimpleDateFormat("hh:mm a",Locale.ENGLISH);
Date date = parseFormat.parse("10:30 PM");
System.out.println(displayFormat.format(date));
} catch (ParseException e) {
e.printStackTrace();
}
运行结果:22:30
- 24小时制转12小时制
try {
SimpleDateFormat displayFormat = new SimpleDateFormat("HH:mm");
SimpleDateFormat parseFormat = new SimpleDateFormat("hh:mm a",Locale.ENGLISH);
Date date = displayFormat.parse("17:02");
System.out.println(parseFormat.format(date));
} catch (ParseException e) {
e.printStackTrace();
}
运行结果:05:02 PM
注意事项:(1)在将不同格式的时间字符串转换成Date类型时,采用不同的格式化参数
(2)在输出时采用对应的格式
(3)SimpleDateFormat("hh:mm a",Locale.ENGLISH);如将控制面板-->区域和语言选项中的区域选项改成英语(*),则第二个参数可以省略。同理如果am/pm是用上午/下午表示的,那么只要把区域设为中文(*),省略第二个参数即可。