java - android将字符串解析为日期 - 日期不正确
问题描述
我花了很多时间,我仍然不明白为什么会这样。在下面的代码中,时间正确更改,日期不正确。
String dtAll = mDate + " " + mTime;
Date dat = new Date();
@SuppressLint("SimpleDateFormat") SimpleDateFormat format = new SimpleDateFormat("dd/MM/YYYY HH:mm");
try {
dat = format.parse(dtAll);
} catch (ParseException e) {
e.printStackTrace();
}
Log.d("dat", String.valueOf(dat));
Log.d("dtAll", dtAll);
结果:
D/dat: Sun Dec 31 17:24:00 GMT+01:00 2017
D/dtAll: 20/09/2018 17:24
有人会帮助我吗?
解决方案
在格式中使用年份yyyy
:
new SimpleDateFormat("dd/MM/yyyy HH:mm");
推荐阅读
- azure-devops - 如何从 YAML 文件传递 Azure ARM 模板对象值?
- c# - Azure Functions V1 用户机密
- react-redux - 向 redux reducer 添加逻辑以保持状态
- html - 如何限制CSS中的字符数
- harfbuzz - 如何从字体中获取字体脚本类型
- android - Jetpack Compose LazyColumn 的 ItemDecoration 是什么?
- ruby-on-rails - 如何正确参数化我的 postgresql 查询
- laravel - 邮递员软件中是否可以访问laravel web route文件
- reactjs - 在数组上调用 push(),TypeError:尝试分配给只读属性
- java - 如何在可能尚未初始化时从另一个线程关闭线程