我在我的 android 应用程序(java)中这样做:
String sdt_ = DateFormat.format("yyyyMMdd HH:mm", dt_).toString();
但是我明白了
01-16 14:31:13.308: D/ThS(25810): dt_ = Wed Jan 16 13:28:00 GMT+00:00 2013
01-16 14:31:23.758: D/ThS(25810): sdt_ = 20130116 HH:28
如果我将 HH 更改为 hh 我会得到这个
sdt_ = 20130116 01:28
但我需要这个
sdt_ = 20130116 13:28
最佳答案
我不知道,你的代码有什么问题,但这段代码对我有用:
DateFormat df = new SimpleDateFormat("yyyyMMdd HH:mm");
String sdt = df.format(new Date(System.currentTimeMillis()));
System.out.println(sdt);
编辑:
后来我发现您的原始代码应该适用于此:
String sdt_ = DateFormat.format("yyyyMMdd kk:mm", dt_).toString();
显然,android.text.format.DateFormat 不使用“H”约束而是使用“k”代替它!有关详细信息,请参阅此问题:How to set 24-hours format for date on java?
关于java - 将日期时间转换为字符串,时间错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14361191/