【问题标题】:DateFormatter parse String to Date gives wrong format [duplicate]DateFormatter 将字符串解析为日期给出错误的格式 [重复]
【发布时间】:2018-11-28 11:43:11
【问题描述】:

我有以下代码:

System.out.println(array[9]);
Date d = df.parse(array[9]);
System.out.println(d.toString());

结果如下:

01.01.2017

2017 年 1 月 1 日星期日 00:00:00 CET

我的日期格式化程序:

DateFormat df = new SimpleDateFormat("dd.MM.yyyy",Locale.GERMANY);

所以我现在的问题是为什么我得到错误的格式。 第一个结果是一个字符串,我必须将其转换为日期。 但我得到了错误的格式,而不是德语格式 (dd.MM.yyyy)。

怎么了?

【问题讨论】:

标签: java simpledateformat date-formatting


【解决方案1】:

在您的示例中,如果您打算将Date 转换为String,则应使用df.format(d)。默认的Date.toString() 方法将使用您无法控制的预定义格式。

【讨论】:

  • 谢谢。但我必须从字符串转换为日期
  • 您已经使用df.parse()String 转换为DateDate 是一个占位符。它与显示格式无关。如果您打算以特定格式显示占位符,则必须使用df.format() 方法。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-03-27
  • 1970-01-01
  • 1970-01-01
  • 2013-01-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多