首页 > 解决方案 > java.time.format.DateTimeParseException:无法在索引 0 处解析文本“06/05/2019”

问题描述

当我尝试格式化日期时,我遇到了这个错误时间。这是代码片段。

private LocalDate expirationDate;

public static String convertIntlToStandard(String dateTpChange) {
    if(StringUtils.isNotBlank(dateTpChange)) {
        DateTimeFormatter oldformatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
        LocalDate formatDateTime = LocalDate.parse(dateTpChange, oldformatter);
        DateTimeFormatter newformatter = DateTimeFormatter.ofPattern("MM/dd/yyyy");
        return formatDateTime.format(newformatter);
    } else {
        return dateTpChange;
    }
}

boPrescriptionResponse.setExpirationDate(LocalDate.parse(DateUtils.convertIntlToStandard(boPrescription.getExpirationDate().toString())));

java.time.format.DateTimeParseException:无法在索引 0 处解析文本“06/05/2019”

标签: java

解决方案


看起来您切换了oldformatter并且newformatter

public static String convertIntlToStandard(String dateTpChange) {
    if(StringUtils.isNotBlank(dateTpChange)) {
        DateTimeFormatter oldformatter = DateTimeFormatter.ofPattern("MM/dd/yyyy");
        LocalDate formatDateTime = LocalDate.parse(dateTpChange, oldformatter);
        DateTimeFormatter newformatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
        return formatDateTime.format(newformatter);
    } else {
        return dateTpChange;
    }
}

推荐阅读