0

我目前正在用 Java 制作拍卖程序,我正在尝试制定截止日期,但是我的日期一直显示为 (7/04/2013 11:22),有没有办法使用 String.format 添加前导零到这个日期,当它是一个数字的日子?

String timeOne = Server.getDateTime(itemArray.get(1).time).toString()

稍后当我尝试对其进行子字符串化时,它会导致我出现问题,并且它的长度小于 17 个字符。

提前感谢,詹姆斯。

4

2 回答 2

5

@Leonard Brünings 的回答是正确的。这就是为什么您的原始代码是错误的方式......即使它有效。

javadoc forCalendar.toString()是这样说的:

"返回此日历的字符串表示形式。此方法仅用于调试目的,返回字符串的格式可能因实现而异。 "

基本上,您正在使用toString()javadoc 说您不应该使用的目的。即使您调整了 的输出toString(),您的代码也可能很脆弱。JVM 中的更改可能会破坏它。更改语言环境可能会破坏它。

于 2013-04-07T12:02:51.307 回答
3

只需使用 SimpleDateFormat

import java.text.SimpleDateFormat;

Calendar timeOne = Server.getDateTime(itemArray.get(1).time)

SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/yyyy HH:mm")

System.out.println(sdf.format(timeOne.getTime()))
于 2013-04-07T11:48:56.653 回答