<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                [TOC] [TOC] # 簡介 `java.text.DateFormat` DateFormat 日期/時間格式化子類的抽象類, 使用其子類SimpleDateFormat 實例化 我們可以通過這個類幫助我們完成日期和文本之間的轉換,也就是Date對象與String對象之間進行來回轉換 * 格式化: 按照指定的格式,從Date對象轉換為String對象 * 解析: 按照指定的格式,從String對象轉換為Date對象 由于DateFormat為抽象類,我們經常用他的子類SimpleDateFormat 構造方法: ~~~ public SimpleDateFormat() 默認的格式化操作 public SimpleDateFormat(String pattern) 按照指定的格式,進行日期格式化 日期和時間模式 y 年 M 年中的月份 d 月份中的天數 H 一天中的小時數(0-23) m 小時中的分鐘數 s 分鐘中的秒數 S 毫秒數 ~~~ 方法: ~~~ public final String format(Date date) 把日期 格式化成字符串 public Date parse(String source) 把日期字符串 轉換成 日期對象 ~~~ 例子 ~~~ //創建日期格式化對象,在獲取格式化對象時可以指定風格 DateFormat df= new SimpleDateFormat("yyyy-MM-dd");//對日期進行格式化 Date date = new Date(1607616000000L); String str_time = df.format(date); System.out.println(str_time);//2020年12月11日 String str = "2020年12月11日"; DateFormat df = new SimpleDateFormat(“yyyy年MM月dd日”); Date date = df.parse( str ); //Date對象中的內容為Fri Dec 11 00:00:00 CST 2020 ~~~ # DateFormat類(日期格式化) DateFormat類可以將一個日期/時間對象格式化為表示某個國家地區的日期/時間字符串。 DateFormat類除了可按國家地區格式化輸出日期外,它還定義了一些用于描述日期/時間的顯示模式的int型的常量,包括FULL, LONG, MEDIUM, DEFAULT, SHORT,實例化DateFormat對象時,可以使用這些常量,控制日期/時間的顯示長度。 例如,對于日期/時間“2005年9月15日下午4時41分20秒”,如設置了DateFormat的顯示模式,則日期/時間顯示樣式分別為: * SHORT模式完全是數字的,在中文環境下顯示為“05-9-15 下午4:41”;在英文環境下為“9/15/05 4:41 PM”。 * MEDIUM模式比SHORT模式長些,在中文環境顯示為“2005-9-15 16:41:20”;在英文環境下顯示為“Sep 15, 2005 4:41:20 PM”。 * LONG模式比MEDIUM模式更長一些,在中文環境下顯示為“2005年9月15日 下午04時41分20秒”;在英文環境下顯示為“September 15, 2005 4:41:20 PM CST”。 * FULL模式指定日期/時間的完整格式,在中文環境下顯示為“2005年9月15日 星期四 下午04時41分20秒 CST”;在英文環境下,這個日期/時間顯示為“Thursday, September 15, 2005 4:41:20 PM CST”。 # 實例化DateFormat類 實例化DateFormat類有九種方式,以下三種為帶參形式,下面列出的三種方式也可以分別不帶參,或只帶顯示樣式的參數。 * `getDateInstance(int style, Locale aLocale)`:以指定的日期顯示模式和本地信息來獲得DateFormat實例對象,該實例對象不處理時間值部分。 * `getTimeInstance(int style, Locale aLocale)`:以指定的時間顯示模式和本地信息來獲得DateFormat實例對象,該實例對象不處理日期值部分。 * `getDateTimeInstance(int dateStyle, int timeStyle, Locale aLocale)`:以單獨指定的日期顯示模式、時間顯示模式和本地信息來獲得DateFormat實例對象 # DateFormat對象的方法 * format:將date對象格式化為符合某個本地環境習慣的字符串。 * parse:將字符串解析為日期/時間對象。 注意:parse和format完全相反,一個是把date時間轉化為相應地區和國家的顯示樣式,一個是把相應地區的時間日期轉化成date對象,該方法在使用時,解析的時間或日期要符合指定的國家、地區格式,否則會拋異常。 DateFormat對象通常不是線程安全的,每個線程都應該創建自己的 DateFormat實例對象。 # 范例 使用DateFormat格式化輸出日期 ~~~ public static void main(String[] args) { Date date = new Date(); // DateFormat df = DateFormat.getDateInstance(DateFormat.SHORT, Locale.CHINA); // 16-8-8 // DateFormat df = DateFormat.getDateInstance(DateFormat.MEDIUM, Locale.CHINA); // 2016-8-8 // DateFormat df = DateFormat.getDateInstance(DateFormat.LONG, Locale.CHINA); // 2016年8月8日 // DateFormat df = DateFormat.getDateInstance(DateFormat.FULL, Locale.CHINA); // 2016年8月8日 星期一 DateFormat df = DateFormat.getDateInstance(DateFormat.DEFAULT, Locale.CHINA); // 2016-8-8 String str = df.format(date); System.out.println(str); df = DateFormat.getTimeInstance(DateFormat.LONG, Locale.CHINA); System.out.println(df.format(date)); df = DateFormat.getDateTimeInstance(DateFormat.FULL, DateFormat.SHORT, Locale.CHINA); System.out.println(df.format(date)); // 得到默認的DateFormat df = DateFormat.getInstance(); System.out.println(df.format(date)); } ~~~ 使用DateFormat反向把一個字符串格式化成一個日期對象 ~~~ /* * 使用DateFormat反向把一個字符串格式化成一個日期對象 */ public static void main(String[] args) throws ParseException { String str = "2016年8月8日 星期一 下午5:57"; DateFormat df = DateFormat.getDateTimeInstance(DateFormat.FULL, DateFormat.SHORT, Locale.CHINA); Date date = df.parse(str); System.out.println(date); } ~~~ 運行結果為:`Mon Aug 08 17:57:00 CST 2016` 注意:把相應地區的時間日期轉化成date對象時,解析的時間或日期要符合指定的國家、地區格式,否則會拋異常。如下面所示的代碼就會拋異常: ~~~ /* * 使用DateFormat反向把一個字符串格式化成一個日期對象 */ public static void main(String[] args) throws ParseException { String str = "2016年8月8日 星期一 下午5:57"; DateFormat df = DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.SHORT, Locale.CHINA); Date date = df.parse(str); System.out.println(date); } ~~~ 會拋異常如下: ~~~ Exception in thread "main" java.text.ParseException: Unparseable date: "2016年8月8日 星期一 下午5:57" ~~~
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看