在 24 小时时间刻度上获取当前时间和日期

2022-09-04 05:32:27

我在 24 小时时间刻度上获取当前时间时遇到问题。据我所知,“HH”应该代表24小时时间尺度上的当前小时,但是,由于某种原因,“HH”根本没有被解释。这就是为什么以下代码行输出类似“HH:50:06 Uhr, 02.9月“

DateFormat.format("HH:mm:ss 'Uhr', dd. MMM", new Date());

任何想法我做错了什么?但是,使用“hh”工作,这将以12小时的比例输出时间,这不是我想做的。

感谢您的帮助!


答案 1

您可以使用SimpleDateFormat以您喜欢的方式格式化它,这有效:

SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
String str = sdf.format(new Date());

还有安卓版的文档


答案 2

HH是 24 小时格式(0-23;偏移量为 0)的一天中小时的格式说明符,仅当使用 SimpleDateFormat 类设置日期的格式时。

您正在使用android.text.format.DateFormat的格式方法,该类不使用此表示法;相反,它使用符号 k/kk 以 24 小时格式显示小时数。因此,必须按以下方式指定日期格式字符串:

DateFormat.format("kk:mm:ss 'Uhr', dd. MMM", new Date());