我正在使用变量CURRENT_DATE将当前日期存储在sqlite数据库中.我发现使用的日期格式是yyyy-mm-dd.我想解析代码中的日期,但出现此错误:
java.lang.IllegalArgumentException: Parse error:
at java.util.Date.parseError
代码如下所示:
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-mm-dd"); String formattedTaskDate = dateFormat.format(new Date(dateStoredAsstringFetchedFromDB)); Date d = new Date(formattedTaskDate);
首先,我要从数据库中获取日期并将其存储在String变量中(因为日期在sqlite中存储为TEXT),然后执行上述 *** 作,但是我得到了parseError异常.
我该如何解决这个问题?
解决方法:
看来您的日期格式有误.您应注意,大写字母M用于表示月份,小写字母m用于表示分钟.要解决此问题,只需将yyyy-mm-dd更改为yyy-MM-dd.
现在,如果您以后想更改该格式,可以执行以下 *** 作:
try { DateFormat inputFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Date input = inputFormat.parse(date); DateFormat outputFormat = new SimpleDateFormat(" EEEE MMMM-dd-yyyy ", Locale.ENGliSH); String finaldate = outputFormat.format(input); txtDate.setText(finaldate); <-- just an example of displaying the date }catch (Exception ex) { Alerts.CatchError(getBaseContext(), ex.toString()); }
这将显示最初存储的日期为2015-04-25 12:08:34(yyyy-MM-dd HH:mm:ss)为2015年4月25日星期五.当然,您也可以根据自己的喜好更改它,只需参考Ankit为您链接的文档即可.
总结以上是内存溢出为你收集整理的java.lang.IllegalArgumentException:解析错误-日期格式错误?全部内容,希望文章能够帮你解决java.lang.IllegalArgumentException:解析错误-日期格式错误?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)