2 回答

TA貢獻(xiàn)1853條經(jīng)驗(yàn) 獲得超6個(gè)贊
LocalDate .parse(?? ??"15-August-2001"?,? ????DateTimeFormatter.ofPattern(?"dd-MMMM-uuuu"?,?Locale.US?) ) .toString()
提示:最好僅使用標(biāo)準(zhǔn)ISO 8601格式以文本方式交換日期時(shí)間數(shù)據(jù)。
java.time
雖然在技術(shù)上是正確的,但已經(jīng)過時(shí)了?,F(xiàn)代方法使用java.time類,這些類通過采用 JSR 310 取代了遺留的日期時(shí)間類。
LocalDate
該類LocalDate
表示沒有日期時(shí)間和時(shí)區(qū)或offset-from-UTC 的僅日期值。
DateTimeFormatter
使用 定義自定義格式化模式DateTimeFormatter.ofPattern
。格式化代碼與遺留類不完全相同SimpleDateFormat
,所以一定要仔細(xì)研究 Javadoc。
指定 aLocale
以確定在翻譯月份名稱時(shí)使用的人類語(yǔ)言。
String input = "15-August-2001" ;
DateTimeFormatter f = DateTimeFormatter.ofPattern( "dd-MMMM-uuuu" , Locale.US ) ;
LocalDate ld = LocalDate.parse( input , f ) ;
System.out.println( "ld.toString(): " + ld ) ;
ld.toString(): 2001-08-15

TA貢獻(xiàn)2036條經(jīng)驗(yàn) 獲得超8個(gè)贊
使用Locale.US
以便考慮美國(guó)格式的月份名稱
SimpleDateFormat("dd-MMM-yyyy",Locale.US)
添加回答
舉報(bào)