我正在开发一个Java应用程序,在这个应用程序中,我试图在打印java.sql.Time
对象之前删除它的秒部分。我尝试使用SimpleDateFormat
并提供HH:MM
和HH:mm
,但是它给了我奇怪的结果,其中包括时区。如何从没有秒的Time对象中获得字符串。我可以执行REGEX和简单删除第二次:
后的部分,但我希望有更好的东西。谢谢。
代码:
SimpleDateFormat sdf = new SimpleDateFormat("HH:MM");
Date formattedDate = sdf.parse(TimeObject.getTargetTime().toString());
String msgToPring= "Message "+formattedDate;
当前产出:
Thu Jan 01 14:15:00 IST 1970
我尝试了一些其他的建议,这样的链接,但他们似乎没有解决这个问题。
发布于 2016-10-12 00:29:28
您正在解析日期(从字符串创建一个新的date对象),但实际上要做的是格式化它(从现有日期创建一个字符串表示):
SimpleDateFormat sdf = new SimpleDateFormat("HH:MM");
String dateString = sdf.format(TimeObject.getTargetTime());
String msgToPring = "Message "+dateString;
注意:这只会创建日期对象打印出的小时和秒的字符串表示。您的原始日期对象不会更改,并且仍然有其完整的日期信息。
https://stackoverflow.com/questions/39993861
复制相似问题