【发布时间】:2019-11-08 15:40:15
【问题描述】:
我需要获取格式的日期时间字符串
"yyyy-MM-dd'T'HH:mm:ss.SSSZ"
其中 SSS 是毫秒数(从 000 到 999)。
我写了如下代码sn-p:
Date date=Calendar.getInstance().getTime();
String currentDateTimeString = (String) android.text.format.DateFormat.
format("yyyy-MM-dd'T'HH:mm:ss.SSSZ",Calendar.getInstance().getTime());
但我得到类似的字符串
“2019-11-08T13:39:33.SSSZ”
由于此答案中描述的一些问题
https://stackoverflow.com/a/58768066/930835
由于它提供的信息,该答案已被接受。该建议不适用于我的情况。
确实,我的应用需要与 Android API 级别 19 兼容。
顺便说一句,这个问题要求对特定代码 sn-p 进行评估。
这是一个独立的代码 sn-p。所以这是一个不同的问题,它本身很有用。
所以我尝试了这段代码
Date date=Calendar.getInstance().getTime();
String currentDateTimeString = (String) android.text.format.DateFormat.
format("yyyy-MM-dd'T'HH:mm:ss",date);
long ms=date.getTime() %1000;
currentDateTimeString=currentDateTimeString+"."+String.valueOf(ms)+"Z";
但我不知道它是否可靠,即它是否正确计算了那个 Date 瞬间的毫秒数。
【问题讨论】:
-
@locus2k 不,它是关于一个特定的代码 sn-p,它具有不同的计算毫秒数的方法。此外,其他问题的建议需要比我想要的更新的 API 级别。
-
@Sotirios Delimanolis 查看对问题和上述评论的修改。
标签: java android datetime milliseconds integer-division