我目前正在用 Java 制作拍卖程序,我正在尝试制定截止日期,但是我的日期一直显示为 (7/04/2013 11:22),有没有办法使用 String.format 添加前导零到这个日期,当它是一个数字的日子?
String timeOne = Server.getDateTime(itemArray.get(1).time).toString()
稍后当我尝试对其进行子字符串化时,它会导致我出现问题,并且它的长度小于 17 个字符。
提前感谢,詹姆斯。
@Leonard Brünings 的回答是正确的。这就是为什么您的原始代码是错误的方式......即使它有效。
javadoc forCalendar.toString()
是这样说的:
"返回此日历的字符串表示形式。此方法仅用于调试目的,返回字符串的格式可能因实现而异。 "
基本上,您正在使用toString()
javadoc 说您不应该使用的目的。即使您调整了 的输出toString()
,您的代码也可能很脆弱。JVM 中的更改可能会破坏它。更改语言环境可能会破坏它。
只需使用 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()))