DateTimeFormatter fmt = DateTimeFormat.forPattern("HH:mm:ss");
LocalTime localTime = fmt.parseLocalTime("02:51:20");
System.out.println("LocalTime: "+localTime);
我只需要02:51:20,但输出为02:51:20.000。有什么方法可以从输出中删除.000(毫秒)。
答案 0 :(得分:3)
使用
修复了此问题DateTime time = new DateTime();
DateTimeFormatter format = DateTimeFormat.forPattern("HH:mm:ss");
String localTime = time != null ? format.print(new LocalTime(time.getHourOfDay(),
time.getMinuteOfHour(), time.getSecondOfMinute())) : null;
DateTime和LocalTime来自joda
答案 1 :(得分:2)
是的 - 您只需要在打印时进行格式化。目前,您只是使用默认的toString()
表示。如果您对已经使用的格式化程序感到满意,可以使用:
System.out.println("LocalTime: " + fmt.print(localTime));
答案 2 :(得分:1)
您可以轻松使用DateTimeFormetter print() method
。试试这个;
DateTimeFormatter fmt = DateTimeFormat.forPattern("HH:mm:ss");
LocalTime localTime = fmt.parseLocalTime("02:51:20");
System.out.println("LocalTime : " + localTime);
System.out.println("LocalTime with DateTimeFormatter : " + fmt.print(localTime));
输出是;
LocalTime : 02:51:20.000
LocalTime with DateTimeFormatter : 02:51:20