語言

Date.Parse(String) 方法

定義

警告

deprecated

嘗試將字串 s 解讀為日期與時間的表示。

[Android.Runtime.Register("parse", "(Ljava/lang/String;)J", "")]
[System.Obsolete("deprecated")]
public static long Parse(string? s);
[<Android.Runtime.Register("parse", "(Ljava/lang/String;)J", "")>]
[<System.Obsolete("deprecated")>]
static member Parse : string -> int64

參數

s
String

一串需要解析為日期的字串。

傳回

自 1970 年 1 月 1 日 00:00:00 GMT 以來,字串參數所代表的毫秒數。

屬性

備註

嘗試將字串 s 解讀為日期與時間的表示。 若嘗試成功,所示時間將以該時間的距離(以毫秒計)表示,該時間以紀元(1970年1月1日格林威治標準時間00:00:00)為單位。 若嘗試失敗,則擲出 a IllegalArgumentException 。

它接受多種語法;特別地,它識別 IETF 標準日期語法:「1995 年 8 月 12 日星期六 13:30:00 GMT」。 它也能理解美國本土的時區縮寫,但一般使用時應使用時區偏移:「1995年8月12日星期六 13:30:00 GMT+0430」(格林威治子午線以西4小時30分鐘)。 若未指定時區,則假設當地時區。 GMT 和 UTC 被視為等效時間。

字串 s 會從左到右處理,尋找感興趣的資料。 裡面的任何內容 s 都放在 ASCII 括號 ( 內,會 ) 被忽略。 括號可為巢狀。 否則,唯一允許的 s 字元是這些 ASCII 字元: <blockquote>

abcdefghijklmnopqrstuvwxyz
            ABCDEFGHIJKLMNOPQRSTUVWXYZ
            0123456789,+-:/

</blockquote> 與空白字元。

連續的十進位數字序列被視為十進位數字:<ul<>li>如果數字前面有 + or - 且已識別年份,則該數字為時區偏移。 如果數字小於24,則是以小時計量的偏移。 否則,它被視為以分鐘為單位的偏移,以24小時時間格式表示,且不加標點符號。 前述 - 表示向西偏移。 時區偏移總是相對於UTC(格林威治)。 例如, -5 出現在字串中代表「格林威治以西五小時」,則 +0430 表示「格林威治以東四小時三十分鐘」。 允許字串指定 、 ,UT或UTC冗餘地指定GMT——例如,GMT-5或 utc+0430。 <li>若符合以下條件之一,則該數字被視為年數: <ul><li>數字等於或大於70,後面跟著空格、逗號、斜線或字串 <li>的結尾 li 數字小於70,且已識別<出月份和月份的某一天/li></ul> 若認可的年份數字小於100, 它被解釋為相對於一個世紀的縮寫年份,而該世紀的日期在日期類別初始化前80年以內,距日期19年不超過。 調整年份後,會從中扣除1900年。 例如,如果當前年份是1999年,則假設19到99之間的年份代表1919年到1999年,而0到18年的年份則假設是2000年到2018年。 請注意,這與中 java.text.SimpleDateFormat所用的少於100年的解釋略有不同。 <如果>數字後面跟冒號,則視為小時,除非已識別為小時,此時視為分鐘。 <如果>數字後面有斜線,則視為月份(減少1後得出範圍為 011),除非已識別月份,此時視為月份。 <如果>數字後面有空白、逗號、連字號或字串結尾,則若已識別為小時但未識別分鐘,則視為分鐘;否則,若識別為分鐘但未識別為秒;否則視為月份的某一天。 </ul>

連續的字母序列被視為一個單字,並處理如下:<ul<>li>一個與 相符AM的單字(忽略格)會被忽略(但若未識別1某小時或小於或大於 12,則解析失敗)。 <li>一個與 相符 PM的詞(忽略格)會 12 加總小時(但若未識別某小時或 1 小於或大於 12,則解析失敗)。 <li>任何與 、 SATURDAY或 的前綴SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY相符的詞(忽略格)都會被忽略。 例如, sat, Friday, TUE, 和 Thurs 會被忽略。 <否則>,任何與 、 DECEMBER或 、 JANUARY, FEBRUARY, MARCH, APRIL, MAY, JUNE, JULY, AUGUST, SEPTEMBER, OCTOBER, NOVEMBER的前綴相符的詞(忽略格,並依此處給定的順序考慮)即被視為指定月份,並轉換為數字(0 轉11為 )。 例如, aug, Sept, april, 和 NOV 都被識別為月份。 因此 是 Ma,該定義 MARCH為 ,而非 MAY。 <任何>與 、 UTC或 相符GMT, UT的詞(忽略格)都被視為指 UTC。 <任何>與 、 PST或 相符EST, CST, MST的詞(忽略格)被認為是指位於格林威治西方五、六、七或八小時的北美時區。 任何與 、 PDT或 相符EDT, CDT, MDT的詞(忽略格)在夏令時間期間,均被視為指同一時區。</ul>

當整個字串 s 掃描完畢後,會以兩種方式之一轉換成時間結果。 若已識別時區或時區偏移,則以UTC解讀年份、月份、日期、小時、分鐘及秒,然後套用時區偏移。 否則,年份、月份、月份、月份、時、分鐘和秒則以當地時區來解讀。

此會員已被棄用。 自 JDK 1.1 版本起,已被 DateFormat.parse(String s).

的 java.util.Date.parse(java.lang.String)Java 檔。

此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。

適用於