如何在Java中获取默认日期格式?

6
public class DefaultDateFormatPattern {
    public static void main(String[] args) {
        System.out.println(new Date());
    }
}

输出结果为:Thu Jan 08 10:52:56 IST 2015 在Java中有没有获取所显示日期格式的方法?

“pattern”指的是可以与java.text.SimpleDateFormat一起使用的模式字符串吗? - ez121sl
如果你指的是当前默认平台日期,那么你应该使用 LocalesgetDefault() - Sharp Edge
我建议您不要使用DateSimpleDateFormat。这些类设计得很差,而且已经过时了。相反,使用来自java.time,现代Java日期和时间APIInstant表示时间点。其toString方法生成的格式为DateTimeFormatter.ISO_INSTANT - Ole V.V.
4个回答

7
根据Java 8中Date类的toString()方法,格式如下:EEE MMM dd HH:mm:ss zzz yyyy

正确的(虽然我们不应该费心,因为在2019年我们不应再使用Date类)。 - Ole V.V.

4

1
SimpleDateFormat构造函数需要带有区域设置的模式。但是我想知道它正在打印的日期的模式,以适应我的区域设置。 - Alin
看一下源代码中的 Date.toString() 方法,看看它做了什么。 - Braj

0
 Calendar rightNow = Calendar.getInstance();

 DateFormat d = new SimpleDateFormat("DDD", Locale.getDefault());

 String day = d.format(rightNow.getTime());

您可以使用 SimpleDateFormat 的重载构造函数来获取当前默认的语言环境,请在第二个参数中使用 Locale.getDefault()。 请查看 SimpleDateFormat Api文档


0
你可以使用SimpleDateFormat来获取你想要的日期格式。SimpleDateFormat的默认格式为d/M/yy h:mm a,但你可以根据自己的需要进行设置。
例如:
SimpleDateFormat format=new SimpleDateFormat("dd/MM/yyyy");
System.out.println(format.format(new Date()));

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接