源FastDateFormat.getInstance("HHmmssS").format(Calendar.getInstance());
返回格式为“ HHmmssSSS”的字符串,例如152712599相反预期为1527125。
程序包和版本为“程序包org.apache.commons.lang3.time; @version $ Id:FastDateFormat.java 1591488 2014-04-30 21:49:35Z”。
下面的解决方案中将提供一种解决方法。
最佳答案
实际上,您想要的是十亿分之一秒,而不是毫秒,但是您是对的,尚无此功能(还可以吗?)。
请注意,使用单个“ S”对其进行格式化可能只会给您实际的毫秒,因此您需要使用格式字符串"HHmmssSSS"
。然后,子字符串本身的长度应为"HHmmssS".length()
。
因此,您的实际解决方法/解决方案应该是:
public static <Format> String HHMMssS(final Format calendar) {
final String HHmmssS = "HHmmssSSS";
return FastDateFormat.getInstance(HHmmssS).format(calendar).substring(0, "HHmmssS".length());
}
一个相关的问题(关于解析):
Deci and Centi Seconds parsing in java