在Java中以特定格式打印datetime?[英] Printing out datetime in a specific format in Java?

问题描述

我想以特定格式在 java 中打印出日期时间.我有这个 C# 代码,它以这种格式打印出日期时间.

DateTime value = new DateTime(2010, 1, 18);
Console.WriteLine(value);
Console.WriteLine(value == DateTime.Today);

结果是 - 1/18/2010 12:00:00 AM

现在,我想编写一个 java 代码,以相同的格式打印出日期时间.我使用了 joda.time 库.这是我到目前为止所尝试的.

DateTime today = new DateTime();
System.out.println(today.toString("yyyy-MMM-dd"));

如何在java中的DateTime中将年月日作为构造函数传递并以上述格式打印出来.

解决方案

方法一:使用java.time.LocalDateTime.(强烈推荐)

DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy/MM/dd HH:mm:ss");
LocalDateTime now = LocalDateTime.now();
System.out.println(dtf.format(now)); //2016/11/16 12:08:43

方法 2:使用 java.util.Date.

DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
Date date = new Date();
System.out.println(dateFormat.format(date)); //2016/11/16 12:08:43

方法 3:使用 java.util.Calendar.

DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
Calendar cal = Calendar.getInstance();
System.out.println(dateFormat.format(cal)); //2016/11/16 12:08:43

本文地址:https://www.itbaoku.cn/post/978521.html