Vik*_*kas 0 java date-formatting java.util.date
我的要求是将字符串"2019-04-25 07:06:42.790"转换为与"2019-04-25 07:06:42.790"Date格式相同的对象。
我尝试这样做,但它总是以字符串格式给出。
String createDate = "2019-04-25 07:06:42.790";
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.SSS", Locale.US);
LocalDateTime localDateTime = LocalDateTime.parse(createDate, formatter);
System.out.println(formatter.format(localDateTime));
SimpleDateFormat formatter1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS", Locale.US);
formatter1.setTimeZone(TimeZone.getTimeZone("IST"));
Date date = formatter1.parse(createDate);
System.out.println(date);
String formattedDateString = formatter1.format(date);
System.out.println(formattedDateString);
Run Code Online (Sandbox Code Playgroud)
上述代码的输出:
2019-04-25 07:06:42.790
Thu Apr 25 07:06:42 IST 2019
2019-04-25 07:06:42.790
Run Code Online (Sandbox Code Playgroud)
日期时间对象没有 \xe2\x80\x9cformat\xe2\x80\x9d。
\n仅使用java.time类。
\nLocalDateTime\n.parse ( \n "2019-04-25 07:06:42.790"\n .replace( " " , "T" ) \n)\n.toString()\n.replace( "T" , " " )\nRun Code Online (Sandbox Code Playgroud)\n您需要了解日期时间对象不是文本。它们没有\xe2\x80\x99t 具有\xe2\x80\x9cformat\xe2\x80\x9d。它们确实解析并生成各种格式的文本,但该文本始终是外部的。
\n仅使用java.time类。避免遗留类,例如Date和Calendar。
使您的输入符合 ISO 8601 标准。
\nString input = "2019-04-25 07:06:42.790".replace( " " , "T" ) ;\nRun Code Online (Sandbox Code Playgroud)\n解析为LocalDateTime.
LocalDateTime ldt = LocalDateTime.parse ( input ) ;\nRun Code Online (Sandbox Code Playgroud)\n要生成与您的输入相同的文本,请调用toString并将其替换T为您所需的空格字符。
您可以使用 aDateTimeFormatter而不是上面显示的字符串操作。但在您的具体情况下,我建议使用字符串操作。
| 归档时间: |
|
| 查看次数: |
89 次 |
| 最近记录: |