Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/220.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 解析yyyy-MM-dd格式的日期时发生ParseException_Java_Android_Simpledateformat_Date Parsing_Unparseable - Fatal编程技术网

Java 解析yyyy-MM-dd格式的日期时发生ParseException

Java 解析yyyy-MM-dd格式的日期时发生ParseException,java,android,simpledateformat,date-parsing,unparseable,Java,Android,Simpledateformat,Date Parsing,Unparseable,标准日期[0]包含“2018-06-11” 我在这一行遇到了一个无法处理的异常: java.text.ParseException:不可解析日期:“2018-06-11” 您得到错误是因为您使用了错误的模式来解析日期。改用这个: private SimpleDateFormat dateFormatMonth = new SimpleDateFormat("dd/MM/yyyy", Locale.getDefault()); Date date = dateFormatMonth.parse(s

标准日期[0]
包含“2018-06-11”

我在这一行遇到了一个无法处理的异常:

java.text.ParseException:不可解析日期:“2018-06-11”


您得到错误是因为您使用了错误的模式来解析日期。改用这个:

private SimpleDateFormat dateFormatMonth = new SimpleDateFormat("dd/MM/yyyy", Locale.getDefault());
Date date = dateFormatMonth.parse(strtdate[0]);

假设“06”是月份,“11”是“天”。

作为一个旁白,考虑扔掉长期过时和臭名昭著的麻烦代码< SimpleDateFormat >代码>和朋友,并添加到Android项目中,以便使用<代码> java.时间>代码>,java java日期和时间API。使用它会更好。
LocalDate.parse(strtdate[0])
。由于日期字符串符合ISO 8601标准,因此不需要显式格式设置程序。因此,不可能指定错误的格式。此外,现代的
LocalDate
是一个没有时间的日期,它显然更符合您的要求(尽管名称是时间点,但日期是
date
)。
private SimpleDateFormat dateFormatMonth = new SimpleDateFormat("yyyy-MM-dd", Locale.getDefault());
Date date = dateFormatMonth.parse(strtdate[0]);