Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/330.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java SimpleDateFormat(“ddmmyyyyhmm”)仅包含3y_Java_Simpledateformat - Fatal编程技术网

Java SimpleDateFormat(“ddmmyyyyhmm”)仅包含3y

Java SimpleDateFormat(“ddmmyyyyhmm”)仅包含3y,java,simpledateformat,Java,Simpledateformat,我的应用程序正在处理一个SimpleDateFormatbug。只指定了3y而不是4,但它生成了4位数字的正确输出。我不知道为什么从昨天开始它只生成两位数。我的意思是“14”而不是“2014”。我只是纠正了错误的格式就解决了这个问题,但我仍然想知道为什么它会改变行为。有什么想法吗?谢谢任何数量的y字母,但是yy将被逐字解释,而不管数字的多少。例如,y,yyy和yyy将给出2014,yyyy将给出02014作为输出。只有yy将14作为输出 我不知道是什么改变了输出的行为,但可能是因为您意外地删除了

我的应用程序正在处理一个
SimpleDateFormat
bug。只指定了3y而不是4,但它生成了4位数字的正确输出。我不知道为什么从昨天开始它只生成两位数。我的意思是“14”而不是“2014”。我只是纠正了错误的格式就解决了这个问题,但我仍然想知道为什么它会改变行为。有什么想法吗?谢谢

任何数量的
y
字母,但是
yy
将被逐字解释,而不管数字的多少。例如,
y
yyy
yyy
将给出
2014
yyyy
将给出
02014
作为输出。只有
yy
14
作为输出


我不知道是什么改变了输出的行为,但可能是因为您意外地删除了其中的一个
y
字母:)

可能是因为JVM版本?我的意思是,用Java6做一个测试,我得到了4个数字,而用Java7,我得到了2个数字。阅读文档后,两种实现之间似乎没有什么区别。

有相关代码吗?至少要感谢发布您的代码!非常感谢。我最近才意识到JVM已经从6变为7。这应该是原因!我会调查的。谢谢