加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

不可稀释的日期,在Java中有额外的数字

发布时间:2020-12-14 16:37:28 所属栏目:Java 来源:网络整理
导读:这段代码有什么问题?我试图解析几个月和几个月之间的日期格式. import java.text.SimpleDateFormat;class Main { public static void main(String[] args) { SimpleDateFormat format = new SimpleDateFormat("yyyy'0'MMdd"); try { Date date = format.par
这段代码有什么问题?我试图解析几个月和几个月之间的日期格式.
import java.text.SimpleDateFormat;

class Main {
    public static void main(String[] args) {
        SimpleDateFormat format = new SimpleDateFormat("yyyy'0'MMdd");
        try {
            Date date = format.parse("201600101");
            System.out.println(date);
        } catch (Exception ex) {
            System.out.println(ex.getMessage());
        }
    }
}

这将输出不可稀释日期:“201600101”.如果我将“0”更改为数字[ ‘X’和format.parse(“2016X0101”)]这将工作.

解决方法

正如彼得·劳瑞(Peter Lawrey)所说,Java认为“2016年”是一年.您可以通过将“201600101”修改为例如2016-00101来解决问题,并将格式模式重构为
SimpleDateFormat format = new SimpleDateFormat("yyyy-'0'MMdd");

这将解析你的日期.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读