JAVA中String.format的用法
阿新 • • 發佈:2018-12-14
6.對日期型別進行格式化: 以下日期和時間轉換的字尾字元是為 't' 和 'T' 轉換定義的。這些型別相似於但不完全等同於那些由 GNU date 和 POSIX strftime(3c) 定義的型別。提供其他轉換型別是為了訪問特定於 Java 的功能(如將 'L' 用作秒中的毫秒)。
以下轉換字元用來格式化時間:'H' 24 小時制的小時,被格式化為必要時帶前導零的兩位數,即 00 - 23。'I' 12 小時制的小時,被格式化為必要時帶前導零的兩位數,即 01 - 12。'k' 24 小時制的小時,即 0 - 23。'l' 12 小時制的小時,即 1 - 12。 'M' 小時中的分鐘,被格式化為必要時帶前導零的兩位數,即 00 - 59。'S' 分鐘中的秒,被格式化為必要時帶前導零的兩位數,即 00 - 60 ("60" 是支援閏秒所需的一個特殊值)。'L' 秒中的毫秒,被格式化為必要時帶前導零的三位數,即 000 - 999。'N' 秒中的毫微秒,被格式化為必要時帶前導零的九位數,即 000000000 - 999999999。'p' 特定於語言環境的 上午或下午 標記以小寫形式表示,例如 "am" 或 "pm"。使用轉換字首 'T' 可以強行將此輸出轉換為大寫形式。'z' 相對於 GMT 的 RFC 822 格式的數字時區偏移量,例如 -0800。 'Z' 表示時區縮寫形式的字串。Formatter 的語言環境將取代引數的語言環境(如果有)。's' 自協調世界時 (UTC) 1970 年 1 月 1 日 00:00:00 至現在所經過的秒數,即 Long.MIN_VALUE/1000 與 Long.MAX_VALUE/1000 之間的差值。'Q' 自協調世界時 (UTC) 1970 年 1 月 1 日 00:00:00 至現在所經過的毫秒數,即 Long.MIN_VALUE 與 Long.MAX_VALUE 之間的差值。
以下轉換字元用來格式化日期:'B' 特定於語言環境的月份全稱,例如 "January" 和 "February"。'b' 特定於語言環境的月份簡稱,例如 "Jan" 和 "Feb"。 'h' 與 'b' 相同。'A' 特定於語言環境的星期幾全稱,例如 "Sunday" 和 "Monday"'a' 特定於語言環境的星期幾簡稱,例如 "Sun" 和 "Mon"'C' 除以 100 的四位數表示的年份,被格式化為必要時帶前導零的兩位數,即 00 - 99'Y' 年份,被格式化為必要時帶前導零的四位數(至少),例如,0092 等於格里高利曆的 92 CE。'y' 年份的最後兩位數,被格式化為必要時帶前導零的兩位數,即 00 - 99。'j' 一年中的天數,被格式化為必要時帶前導零的三位數,例如,對於格里高利曆是 001 - 366。'm' 月份,被格式化為必要時帶前導零的兩位數,即 01 - 13。'd' 一個月中的天數,被格式化為必要時帶前導零兩位數,即 01 - 31'e' 一個月中的天數,被格式化為兩位數,即 1 - 31。
以下轉換字元用於格式化常見的日期/時間組合。'R' 24 小時制的時間,被格式化為 "%tH:%tM"'T' 24 小時制的時間,被格式化為 "%tH:%tM:%tS"。'r' 12 小時制的時間,被格式化為 "%tI:%tM:%tS %Tp"。上午或下午標記 ('%Tp') 的位置可能與語言環境有關。'D' 日期,被格式化為 "%tm/%td/%ty"。'F' ISO 8601 格式的完整日期,被格式化為 "%tY-%tm-%td"。'c' 日期和時間,被格式化為 "%ta %tb %td %tT %tZ %tY",例如 "Sun Jul 20 16:17:00 EDT 1969"。