簡體   English   中英

將String轉換為Joda LocalTime格式(HH:mm:ss)並刪除毫秒

[英]Convert String to Joda LocalTime format (HH:mm:ss) and Remove milliseconds

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(毫秒)。

是的 - 您只需要在打印時進行格式化。 目前,您只是使用默認的toString()表示。 如果您對已經使用的格式化程序感到滿意,可以使用:

System.out.println("LocalTime:            " + fmt.print(localTime));

您可以輕松使用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

修正此問題

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM