java - SimpleDateFormat 中的大写字母

标签 java date simpledateformat

执行这段代码:

SimpleDateFormat sdfIn = new SimpleDateFormat("yyyy-MM-dd");
                            Date date = null;
                            try {
                                date = sdfIn.parse(value11);
                            } catch (ParseException e) {
                                // TODO Auto-generated catch block
                                e.printStackTrace();
                            }

                            SimpleDateFormat sdfOut = new SimpleDateFormat("MMM d, yyyy");

                            System.out.println(sdfOut.format( date ));

我得到这个输出 nov 23, 2005 而不是 Nov 23, 2005 这会好得多。
有人知道怎么改吗?? 提前致谢

最佳答案

生成的确切字符串取决于您所在的语言环境。如果您只是使用

new SimpleDateFormat("MMM d, yyyy");

然后将使用系统默认语言环境。您的默认语言环境可能将月份呈现为 nov 而不是 Nov

如果你想使用特定的语言环境,将它传递给构造函数,例如

new SimpleDateFormat("MMM d, yyyy", Locale.US);

关于java - SimpleDateFormat 中的大写字母,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5016057/

相关文章:

java - 如何从 Date 对象中修剪分钟、小时和秒?

java - simpledateformat 解析未正确解析日期

java - 为什么 SimpleDateFormat 需要时区设置来解析 UTC 时间

java - 列表实现中的 ClassCastException?

java - 为什么在 Java (BlueJ) 中使用 ArrayList 作为构造函数参数?

java - 使用属性值设置 Maven 父版本?

java - 我想在java中将字符串转换为日期

java - EasyMock:期望集合中的元素数量

mongodb - 负整数 Date 值在 MongoDB 中意味着什么?

java - 用于日期解析的 SimpleDateFormat 的替代方案