Java LocalDate 解析

标签 java parsing date

一个简单的问题。为什么我收到以下代码的错误 - “无法在索引 3 处解析文本 '03-JUL-2010'”。在 Java 1.8 中?使用 Eclipse。

如果我将代码更改为注释部分。它运行得很好。

import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
public class Test {

public static void main(String[] args) {
//      String date         = "2010-Jul-03";
//      String dateformat   = "yyyy-MMM-dd";

    String date         = "03-JUl-2010";
    String dateformat   = "dd-MMM-yyyy";

    LocalDate localizeddate = LocalDate.parse(date,    DateTimeFormatter.ofPattern(dateformat));

    System.out.println(localizeddate);
}

最佳答案

Build一个DateTimeFormatterignores case

DateTimeFormatter formatter = new DateTimeFormatterBuilder()
                     .parseCaseInsensitive()
                     .append(DateTimeFormatter.ofPattern(dateformat))
                     .toFormatter();

或者修改月份名称的大小写,将JUl修改为Jul

String date         = "03-Jul-2010";

关于Java LocalDate 解析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30515555/

相关文章:

scala - 将自定义标记器与 Parsers 子类连接

mysql - 使用 Mysql 中的 update 语句将日期更改为天

django - 将 'yesterday' 字段添加到 Django 管理日期列表过滤器

java - WebSocket 消息代理的 Android 客户端

java - Solr 异常 : org. apache.solr.common.SolrException:缺少内容流

java - 将过滤器动态应用于电子商务应用程序中的产品列表

java - 与多个客户端的 ServerSocket 连接

java - 修复 XML 文件中的错误编码

c - 用C语言从xml中解析一个字符?

Javascript 时间戳是遥远的 future