亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在java中解析日期月日,年

在java中解析日期月日,年

蠱毒傳說 2021-11-11 17:43:15
我正在嘗試指定一個函數來將String表單中的日期解析為Date.String startDate = "14-08-2014";String endDate = "21/08/2020";String middleDate = "Sep 27, 2018";SimpleDateFormat sdf[] = new SimpleDateFormat[] {new SimpleDateFormat("dd/MM/yyyy"), new SimpleDateFormat("dd-MM-yyyy"), new SimpleDateFormat("MMM dd, yyyy")  };Date date = null;for (DateFormat formatter : sdf) {    try {        date = formatter.parse(middleDate);        break;    } catch (ParseException e) {}System.out.println(date);它適用于除最后一種格式之外的兩種格式。如果它使用middleDate它完成Date等于null。誰能告訴我出了什么問題?
查看完整描述

2 回答

?
qq_遁去的一_1

TA貢獻1725條經驗 獲得超8個贊

有一個使用java.time的解決方案,但仍然需要使用LOCALE.ENGLISH。我不知道有什么方法可以讓它在不使用 LOCALE 的情況下工作...


 String input = "Mar 23, 1994";

    try {

        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("MMM dd, yyyy").withLocale(Locale.ENGLISH);

        LocalDate date = LocalDate.parse(input, formatter);

        System.out.printf("%s%n", date);

    }

    catch (DateTimeParseException exc) {

        System.out.printf("%s is not parsable!%n", input);

        throw exc;      // Rethrow the exception.

    }


查看完整回答
反對 回復 2021-11-11
?
慕仙森

TA貢獻1827條經驗 獲得超8個贊

您的解析器是正確的,您的月份應該是“設置”


"Set 27, 2018"



Jan Feb Mar Apr May Jun Jul Aug Set Oct Nov Dec


查看完整回答
反對 回復 2021-11-11
  • 2 回答
  • 0 關注
  • 151 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號