
java 如何输出英文的时间
用户关注问题
我想在Java程序中输出时间,并且时间的格式是英文的,比如星期几和月份名称用英文表示,有什么方法可以实现吗?
使用SimpleDateFormat设置英文Locale格式化时间
可以使用Java的SimpleDateFormat类配合Locale.ENGLISH来格式化时间。通过指定格式字符串,比如"EEEE, MMMM dd, yyyy",可以输出类似“Monday, January 01, 2024”的英文时间表示。示例代码如下:
SimpleDateFormat sdf = new SimpleDateFormat("EEEE, MMMM dd, yyyy", Locale.ENGLISH);
String formattedDate = sdf.format(new Date());
System.out.println(formattedDate);
我需要在Java程序中打印时间,时间格式要求是英文,并且带有AM或PM标识,有什么合适的格式或方法?
利用格式字符串和Locale输出包含AM/PM的英文时间
可以使用SimpleDateFormat设置格式字符串为"hh:mm a",并配合Locale.ENGLISH,这样时间会以12小时制显示,并带有大写的AM或PM。例如:
SimpleDateFormat sdf = new SimpleDateFormat("hh:mm a", Locale.ENGLISH);
String time = sdf.format(new Date());
System.out.println(time);
这样输出的时间例如“08:30 PM”,满足英文格式要求且含有AM/PM。
有些机器系统默认语言不是英文,我想让Java输出时间时始终使用英文格式,该怎么做?
在格式化时间时明确指定Locale.ENGLISH确保英文输出
系统默认语言环境会影响SimpleDateFormat的输出语言,如果未指定Locale,可能会显示非英文。确保输出英文时间的关键是,在创建SimpleDateFormat实例时明确传入Locale.ENGLISH参数。代码示例:
SimpleDateFormat sdf = new SimpleDateFormat("EEEE, MMMM dd, yyyy", Locale.ENGLISH);
String dateStr = sdf.format(new Date());
即使系统语言环境不是英文,也可以保证时间字符串为英文显示。