就像标题一样,我有一个问题。我需要将LocalDataTime yyyy-MM-ssThh-mm-ss解析为LocalDataTime yyyy-MM-ss hh-mm-ss,但是当我这样做
String beforeConversionStartDate = "2020-01-24T00:06:56";
private DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
LocalDataTime parsedDate = LocalDateTime.parse(beforeConversionStartDate,formatter);
然后我的输出仍然是yyyy-MM-ddTHH:mm:ss
所以我的问题是,如果解析器无法正常工作,如何从LocalDataTime中删除此“ T”?
答案 0 :(得分:3)
您在parse
和format
方法之间感到困惑。
parse
输入LocalDateTime实例然后,根据您的格式化程序format
实例
String beforeConversionStartDate = "2020-01-24T00:06:56";
LocalDateTime parsedDate = LocalDateTime.parse(beforeConversionStartDate);
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
String formattedDate = parsedDate.format(formatter);
答案 1 :(得分:0)
LocalDateTime (Java Platform SE 8 ) 此功能
LocalDateTime.parse(CharSequence text, DateTimeFormatter formatter);
采用格式化程序定义的模式格式化的字符串,并返回LocalDateTime对象,但是返回的对象不知道使用了哪种格式化程序。 因此,您必须在获得解析的字符串后对其进行格式化:
String str = "1986-04-08 12:30";
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm");
LocalDateTime dateTime = LocalDateTime.parse(str, formatter);
String newDateTime = formatter.format(dateTime);