Java Localize DateFormat 无法将给定对象格式化为日期

我希望获得本地化的日期字符串。为此,我正在做:


String dateString = "2019-06-01 00:15:00";

dateString = dateString.replace(" ", "T");

dateString = dateString.concat("Z");


DateFormat dateformat = DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.MEDIUM, Locale.FRENCH);

System.out.println(dateformat.format(dateString));

但我收到以下异常:


java.lang.IllegalArgumentException:无法将给定对象格式化为日期


这里有什么问题?


慕无忌1623718
浏览 117回答 1
1回答

守候你守候我

java.time    String dateString = "2019-06-01 00:15:00";    dateString = dateString.replace(" ", "T");    dateString = dateString.concat("Z");    DateTimeFormatter formatter = DateTimeFormatter            .ofLocalizedDateTime(FormatStyle.SHORT, FormatStyle.MEDIUM)            .withLocale(Locale.FRENCH);    OffsetDateTime dateTime = OffsetDateTime.parse("2019-06-01T00:15:00Z");    String formattedDateTime = dateTime.format(formatter);    System.out.println("Formatted date/time: " + formattedDateTime);输出:格式化日期/时间:01/06/2019 00:15:00我建议你不要使用DateFormat. 该类是出了名的麻烦且早已过时。而是使用DateTimeFormatter现代 Java 日期和时间 API from java.time,如我的代码所示。对于您的代码中出了什么问题,请参阅我在底部链接到的类似问题。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java