举报投诉联系我们 手机版 热门标签 编程学
您的位置:编程学 > java中打印时间 Java 打印日期/时间格式

java中打印时间 Java 打印日期/时间格式

2023-03-17 21:18 Java教程

java中打印时间 Java 打印日期/时间格式

java中打印时间

在 Java 中,打印时间是一个常见的任务。Java 提供了多种方法来实现这一目标,其中最常用的是使用 java.util.Date 和 java.text.SimpleDateFormat 类。

// 获取当前时间
Date date = new Date(); 
// 设置要获取到什么样的时间
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 
// 最后获取时间
String time = sdf.format(date); 
System.out.println(time);  // 输出结果:2020-08-20 15:45:30

上面的代码使用了 SimpleDateFormat 类来格式化当前日期,并把它转换成字符串。SimpleDateFormat 类提供了多种格式化选项,可以根据需要进行修改。此外,Java 8 提供了新的 API 来打印时间,如 LocalTime、LocalDateTime 和 ZonedDateTime 等。

// 获取当前时间  
LocalTime localTime = LocalTime.now();  
System.out.println(localTime);   // 输出结果:15:45:30.919  
  
// 获取当前日期和时间  
LocalDateTime localDateTime = LocalDateTime.now();  
System.out.println(localDateTime); // 输出结果:2020-08-20T15:45:30.919  

 // 获取当前带有时区信息的完整日期和时间  
ZonedDateTime zonedDateTime = ZonedDateTime.now();    System.out.println(zonedDateTime); // 输出结果:2020-08-20T15:45:30.919+08:00[Asia/Shanghai]  

上面的代码使用了 Java 8 提供的新 API 来打印不同格式的当前时间。LocalTime 类用于打印小时、分钟和秒数;LocalDataTIme 类用于打印年、月、天和小时、分钟和秒数;ZonedDataTIme 类用于打印带有特定地理位置信息的完整信息。

Java 打印日期/时间格式

Java格式 - Java 打印日期/时间格式


Java 打印日期/时间格式处理日期,时间和日期时间值。

Java 打印日期/时间格式可以应用于格式值为long,Long,java.util.Calendar,java.util.Date,和java.time.temporal.TemporalAccessor类型。

长类型中的值解释为自1970年1月1日午夜UTC之后过去的毫秒数。

t大写变量T转换字符用于格式化日期/时间值。

日期/时间格式化的一般语法如下:

%<argument_index$><flags><width><conversion>

精度不适用于日期/时间格式。

对于日期/时间格式,转换是一个双字符序列。 第一个字符总是't'或'T'。 第二个字符,称为转换后缀,确定日期/时间参数的格式。

下表包含时间格式的后缀字符

后缀含义
H将时间格式设置为24小时制时钟的两位数小时。 有效值为00到23. 00用于午夜。
I格式化12小时制时钟的一位两位数小时。 有效值为01到12。
k格式化时间与H后缀相同,除了它不向输出添加前导零。 有效值为0到23。
l格式化时间与“I"后缀相同,除了它不添加前导零。 有效值为1到12。
M一小时内两位数的分钟。 有效值为00到59。
S一个两位数的秒。 有效值为00到60。
L一个三位数毫秒。 有效值为000到999。
N一个九位数的纳秒。 有效值为000000000至999999999。
p使用小写格式化特定于语言环境的上午或下午字符串。对于美国地区,“am"或“pm"。 要获取“AM"和“PM",请使用大写变量“T"作为转换字符。
z输出与GMT的数值时区偏移(例如,+0530)。
Z输出时区的字符串缩写(例如,CST,EST,IST等)。
s输出秒自1970年1月1日午夜UTC。
Q自1970年1月1日午夜UTC以来的输出毫秒数。

日期格式化的后缀字符的下表列表

含义
B在美国语言环境中输出本地特定的月份全名,例如“一月",“二月"。
b输出特定于语言环境的缩写月份名称,例如美国语言环境中的“Jan",“Feb"。
h与“b"相同。 输出特定于语言环境的缩写月份名称,例如美国语言环境中的“Jan",“Feb"。
A输出一周中某天的特定于地区的全名,例如美国地区的“星期日”,“星期一”。
a输出一周中某天的特定于语言环境的短名称,例如美国语言环境的“Sun",“Mon"。
C将四位数年份除以100,并将结果格式化为两位数。 如果结果数字为一位数,它将添加一个前导零。 有效值为00到99.例如,如果四位数年份是2014,则它将输出20。
Y如果年份包含少于四位数,则输出带有前导零的四位数年份。
y输出年份的最后两位数字,如有必要,添加前导零。 2011年将输出11。
j一年中三位数的日期。 有效值为000到366。
m一个两位数的月份。 有效值为01到13.需要13的特殊值来支持农历日历。
d一个两位数的日期。 有效值为01到31。
e每月的日期。 有效值为1到31。

下表列出了日期/时间格式的后缀字符

格式描述
R输出时间以24小时时钟格式为“小时:分钟"。 它输出与%tH:%tM相同。 示例:11:23
T以24小时制输出时间,格式为“小时:分:秒"。 它输出相同的“%tH:%tM:%tS"。 示例11:23:10
r以24小时制输出时间,格式为“小时:分:秒"。 它输出相同的“%tH:%tM:%tS"。 示例11:23:10...
D输出日期为“%tm /%td /%ty",例如“01/19/14"
F输出日期为“%tY-%tm-%td",如“2014-01-19"。
c将日期和时间输出为“%ta%tb%td%tT%tZ%tY",例如“Wed Jan 20 12:22:06 CST 2014"。

例子

以下代码显示如何使用日期时间格式化程序。 它在格式说明符中使用'<'标志来重用参数中的值。

import java.time.LocalDateTime;
import java.time.Month;
import java.util.Locale;

public class Main {
  public static void main(String[] args) {
    Locale englishUS = Locale.US;
    LocalDateTime ldt = LocalDateTime.of(2014, Month.JANUARY, 25, 11, 48, 16);

    System.out.printf(englishUS, "US: %tB %<te,  %<tY  %<tT %<Tp%n", ldt);
  }
}

上面的代码生成以下结果。


例2

以下代码格式化默认语言环境中的当前日期和时间。 它使用ZonedDateTime参数,它保存当前日期/时间与时区。

import java.time.ZonedDateTime;

public class Main {
  public static void main(String[] args) {
    ZonedDateTime currentTime = ZonedDateTime.now();
    System.out.printf("%tA %<tB  %<te,  %<tY  %n", currentTime);
    System.out.printf("%TA %<TB  %<te,  %<tY  %n", currentTime);
    System.out.printf("%tD %n", currentTime);
    System.out.printf("%tF %n", currentTime);
    System.out.printf("%tc %n", currentTime);
    System.out.printf("%Tc %n", currentTime);
  }
}

上面的代码生成以下结果。

阅读全文
以上是编程学为你收集整理的java中打印时间 Java 打印日期/时间格式全部内容。
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。
相关文章
© 2024 编程学 bianchengxue.com 版权所有 联系我们
桂ICP备19012293号-7 返回底部