Java中的SimpleDateFormat工作不正确还是我做错了?查看代码示例 [英] Is SimpleDateFormat in Java work incorrect or I did any mistake? See code sample

查看:67
本文介绍了Java中的SimpleDateFormat工作不正确还是我做错了?查看代码示例的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我使用Java并使用sdk 7编译此代码。
控制台显示:

I use Java and compile this code using sdk 7. Console show:

input = 2010/03/30

input=2010/03/30

output = 2010/12/28

output=2010/12/28

public static void main(String[] args) {
    SimpleDateFormat format = new SimpleDateFormat("YYYY/MM/dd");
    String inputDateStr = "2010/03/30";
    try {
        Date date = format.parse(inputDateStr);
        String result = format.format(date);
        System.out.println("input=" + inputDateStr);
        System.out.println("output=" + result);
    } catch (ParseException e) {
        e.printStackTrace();
    }
}


推荐答案

As用于文档 https://docs.oracle.com/ javase / 7 / docs / api / java / text / SimpleDateFormat.html
大写字母 D 表示年,如果要在中使用天数,则应使用小写的 d

As for documentation https://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html uppercase D stands for the day number in a year, if you want day number in a month you should use lowercase d.

YYYY yyyy 相同:

Letter  Date or Time Component  Presentation    Examples
G   Era designator  Text    AD
y   Year    Year    1996; 96
Y   Week year   Year    2009; 09
M   Month in year   Month   July; Jul; 07
w   Week in year    Number  27
W   Week in month   Number  2
D   Day in year Number  189
d   Day in month    Number  10
F   Day of week in month    Number  2
E   Day name in week    Text    Tuesday; Tue
u   Day number of week (1 = Monday, ..., 7 = Sunday)    Number  1
a   Am/pm marker    Text    PM
H   Hour in day (0-23)  Number  0
k   Hour in day (1-24)  Number  24
K   Hour in am/pm (0-11)    Number  0
h   Hour in am/pm (1-12)    Number  12
m   Minute in hour  Number  30
s   Second in minute    Number  55
S   Millisecond Number  978
z   Time zone   General time zone   Pacific Standard Time; PST; GMT-08:00
Z   Time zone   RFC 822 time zone   -0800
X   Time zone   ISO 8601 time zone  -08; -0800; -08:00

这篇关于Java中的SimpleDateFormat工作不正确还是我做错了?查看代码示例的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆