語言

DateIntervalFormat.GetInstance 方法

定義

多載

名稱 Description
GetInstance(String, Locale, DateIntervalInfo)

從骨架、DateIntervalInfo 和給定的位置建立一個 DateIntervalFormat。

GetInstance(String, ULocale, DateIntervalInfo)

從骨架、DateIntervalInfo 和給定的位置建立一個 DateIntervalFormat。

GetInstance(String, Locale)

從骨架和指定地點構建一個DateIntervalFormat。

GetInstance(String)

從骨架和預設 FORMAT 地點構建一個 DateIntervalFormat。

GetInstance(String, DateIntervalInfo)

從骨架 DateIntervalInfo 和預設 FORMAT 位置建立一個 DateIntervalFormat。

GetInstance(String, ULocale)

從骨架和指定地點構建一個DateIntervalFormat。

GetInstance(String, Locale, DateIntervalInfo)

從骨架、DateIntervalInfo 和給定的位置建立一個 DateIntervalFormat。

[Android.Runtime.Register("getInstance", "(Ljava/lang/String;Ljava/util/Locale;Landroid/icu/text/DateIntervalInfo;)Landroid/icu/text/DateIntervalFormat;", "", ApiSince=24)]
public static Android.Icu.Text.DateIntervalFormat? GetInstance(string? skeleton, Java.Util.Locale? locale, Android.Icu.Text.DateIntervalInfo? dtitvinf);
[<Android.Runtime.Register("getInstance", "(Ljava/lang/String;Ljava/util/Locale;Landroid/icu/text/DateIntervalInfo;)Landroid/icu/text/DateIntervalFormat;", "", ApiSince=24)>]
static member GetInstance : string * Java.Util.Locale * Android.Icu.Text.DateIntervalInfo -> Android.Icu.Text.DateIntervalFormat

參數

skeleton
String

音程格式所依據的骨架。

locale
Locale

給定地點

dtitvinf
DateIntervalInfo

將採用 DateIntervalInfo 物件。

傳回

一個日期時間間隔格式化器。

屬性

備註

從骨架、DateIntervalInfo 和給定的位置建立一個 DateIntervalFormat。 這是 getInstance(String skeleton, ULocale locale, DateIntervalInfo dtitvinf) 的方便覆寫

範例程式碼:

final Date date[] = {
        new GregorianCalendar(2007,9,10,10,10,10).getTime(),
        new GregorianCalendar(2007,10,10,10,10,10).getTime(),
        new GregorianCalendar(2007,10,10,22,10,10).getTime(),
};
final DateInterval dtitv[] = {
        new DateInterval(date[0].getTime(),date[1].getTime()),
        new DateInterval(date[1].getTime(),date[2].getTime()),
};
final String [] skeletons = {
        DateFormat.YEAR_ABBR_MONTH_DAY,
        DateFormat.HOUR24_MINUTE,
};
System.out.printf("%-15s%-35s%-35s%-45s%-35s\n", "Skeleton", "from","to", "Date Interval in en_US", "Date Interval in Ja");
// Create an empty DateIntervalInfo object
DateIntervalInfo dtitvinf = new DateIntervalInfo(ULocale.ENGLISH);
// Set Date Time internal pattern for MONTH, DAY_OF_MONTH, HOUR_OF_DAY
dtitvinf.setIntervalPattern("yMMMd", Calendar.MONTH, "y 'Diff' MMM d --- MMM d");
dtitvinf.setIntervalPattern("Hm", Calendar.HOUR_OF_DAY, "yyyy MMM d HH:mm ~ HH:mm");
// Set fallback interval pattern
dtitvinf.setFallbackIntervalPattern("{0} ~~~ {1}");
// Get the DateIntervalFormat with the custom pattern
for (String skeleton:skeletons){
    for (int i=0;i<2;i++) {
        System.out.printf("%-15s%-35s%-35s", skeleton,date[i].toString(), date[i+1].toString());
        DateIntervalFormat dtitvfmtEn = DateIntervalFormat.getInstance(skeleton,ULocale.ENGLISH,dtitvinf);
        DateIntervalFormat dtitvfmtJa = DateIntervalFormat.getInstance(skeleton,ULocale.JAPANESE,dtitvinf);
        System.out.printf("%-45s%-35s\n", dtitvfmtEn.format(dtitv[i]),dtitvfmtJa.format(dtitv[i]));
    }
}
/** output of the sample code:
 *************************************************************************************************************************************************************************
  Skeleton       from                               to                                 Date Interval in en_US                       Date Interval in Ja
  yMMMd          Wed Oct 10 10:10:10 EDT 2007       Sat Nov 10 10:10:10 EST 2007       2007 Diff Oct 10 --- Nov 10                  2007 Diff 10\u6708 10 --- 11\u6708 10
  yMMMd          Sat Nov 10 10:10:10 EST 2007       Sat Nov 10 22:10:10 EST 2007       Nov 10, 2007                                 2007\u5e7411\u670810\u65e5
  Hm             Wed Oct 10 10:10:10 EDT 2007       Sat Nov 10 10:10:10 EST 2007       10/10/2007, 10:10 ~~~ 11/10/2007, 10:10      2007/10/10 10:10 ~~~ 2007/11/10 10:10
  Hm             Sat Nov 10 10:10:10 EST 2007       Sat Nov 10 22:10:10 EST 2007       2007 Nov 10 10:10 ~ 22:10                    2007 11\u6708 10 10:10 ~ 22:10
 *************************************************************************************************************************************************************************/

Android 參考資料。android.icu.text.DateIntervalFormat.getInstance

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

適用於

GetInstance(String, ULocale, DateIntervalInfo)

從骨架、DateIntervalInfo 和給定的位置建立一個 DateIntervalFormat。

[Android.Runtime.Register("getInstance", "(Ljava/lang/String;Landroid/icu/util/ULocale;Landroid/icu/text/DateIntervalInfo;)Landroid/icu/text/DateIntervalFormat;", "", ApiSince=24)]
public static Android.Icu.Text.DateIntervalFormat? GetInstance(string? skeleton, Android.Icu.Util.ULocale? locale, Android.Icu.Text.DateIntervalInfo? dtitvinf);
[<Android.Runtime.Register("getInstance", "(Ljava/lang/String;Landroid/icu/util/ULocale;Landroid/icu/text/DateIntervalInfo;)Landroid/icu/text/DateIntervalFormat;", "", ApiSince=24)>]
static member GetInstance : string * Android.Icu.Util.ULocale * Android.Icu.Text.DateIntervalInfo -> Android.Icu.Text.DateIntervalFormat

參數

skeleton
String

音程格式所依據的骨架。

locale
ULocale

給定地點

dtitvinf
DateIntervalInfo

將採用 DateIntervalInfo 物件。

傳回

一個日期時間間隔格式化器。

屬性

備註

從骨架、DateIntervalInfo 和給定的位置建立一個 DateIntervalFormat。

在此工廠方法中,使用者自行提供日期區間模式資訊,而非使用資源檔案中預先定義的資料。 這種工廠方法適合想要提供自己音程模式的強大用戶。

DateFormat 中有預先定義的骨架,例如 MONTH_DAY、YEAR_MONTH_WEEKDAY_DAY 等。

這些骨架在資源檔案中有預先定義的區間模式。 鼓勵用戶使用這些資訊。 例如:DateIntervalFormat.getInstance(DateFormat.MONTH_DAY, false, loc, itvinf);

DateIntervalInfo 提供區間模式。

鼓勵使用者在 DateIntervalInfo 中設定預設的區間模式,若他們想設定其他區間模式(而非從資源檔案讀取區間模式)。 當找不到最大日曆不同欄位對應的區間模式(若使用者未設定),區間格式會回退到預設的區間模式。 若使用者未提供預設間隔模式,則會回退為「{date0} - {date1}」

Java 文件 android.icu.text.DateIntervalFormat.getInstance(java.lang.String, android.icu.util.ULocale, android.icu.text.DateIntervalInfo)。

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

適用於

GetInstance(String, Locale)

從骨架和指定地點構建一個DateIntervalFormat。

[Android.Runtime.Register("getInstance", "(Ljava/lang/String;Ljava/util/Locale;)Landroid/icu/text/DateIntervalFormat;", "", ApiSince=24)]
public static Android.Icu.Text.DateIntervalFormat? GetInstance(string? skeleton, Java.Util.Locale? locale);
[<Android.Runtime.Register("getInstance", "(Ljava/lang/String;Ljava/util/Locale;)Landroid/icu/text/DateIntervalFormat;", "", ApiSince=24)>]
static member GetInstance : string * Java.Util.Locale -> Android.Icu.Text.DateIntervalFormat

參數

skeleton
String

音程格式所依據的骨架。

locale
Locale

給定地點

傳回

一個日期時間間隔格式化器。

屬性

備註

從骨架和指定地點構建一個DateIntervalFormat。 這是對 getInstance(String skeleton, ULocale locale) 的方便覆寫

範例程式碼:

import java.util.Date;

import android.icu.text.DateFormat;
import android.icu.text.DateIntervalFormat;
import android.icu.text.DateIntervalInfo;
import android.icu.util.Calendar;
import android.icu.util.DateInterval;
import android.icu.util.GregorianCalendar;
import android.icu.util.ULocale;
...
final Date date[] = {
        new GregorianCalendar(2007,10,10,10,10,10).getTime(),
        new GregorianCalendar(2008,10,10,10,10,10).getTime(),
        new GregorianCalendar(2008,11,10,10,10,10).getTime(),
        new GregorianCalendar(2008,11,10,15,10,10).getTime(),
};
final DateInterval dtitv[] = {
        new DateInterval(date[0].getTime(),date[1].getTime()),
        new DateInterval(date[1].getTime(),date[2].getTime()),
        new DateInterval(date[2].getTime(),date[3].getTime()),
};
final String [] skeletons = {
        DateFormat.YEAR_ABBR_MONTH_DAY,
        DateFormat.MONTH_DAY,
        DateFormat.HOUR_MINUTE,
};
System.out.printf("%-15s%-35s%-35s%-35s%-35s\n", "Skeleton", "from","to","Date Interval in en_US", "Date Interval in Ja");
int i=0;
for (String skeleton:skeletons) {
    System.out.printf("%-15s%-35s%-35s", skeleton,date[i].toString(), date[i+1].toString());
    DateIntervalFormat dtitvfmtEn = DateIntervalFormat.getInstance(skeleton, ULocale.ENGLISH);
    DateIntervalFormat dtitvfmtJa = DateIntervalFormat.getInstance(skeleton, ULocale.JAPANESE);
    System.out.printf("%-35s%-35s\n", dtitvfmtEn.format(dtitv[i]),dtitvfmtJa.format(dtitv[i]));
    i++;
}
/** output of the sample code:
 *********************************************************************************************************************************************************
 Skeleton       from                               to                                 Date Interval in en_US             Date Interval in Ja
 yMMMd          Sat Nov 10 10:10:10 EST 2007       Mon Nov 10 10:10:10 EST 2008       Nov 10, 2007 \u2013 Nov 10, 2008        2007\u5e7411\u670810\u65e5\uff5e2008\u5e7411\u670810\u65e5
 MMMMd          Mon Nov 10 10:10:10 EST 2008       Wed Dec 10 10:10:10 EST 2008       November 10 \u2013 December 10          11\u670810\u65e5\uff5e12\u670810\u65e5
 jm             Wed Dec 10 10:10:10 EST 2008       Wed Dec 10 15:10:10 EST 2008       10:10 AM \u2013 3:10 PM                 10:10\uff5e15:10
 *********************************************************************************************************************************************************/

Android 參考資料。android.icu.text.DateIntervalFormat.getInstance

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

適用於

GetInstance(String)

從骨架和預設 FORMAT 地點構建一個 DateIntervalFormat。

[Android.Runtime.Register("getInstance", "(Ljava/lang/String;)Landroid/icu/text/DateIntervalFormat;", "", ApiSince=24)]
public static Android.Icu.Text.DateIntervalFormat? GetInstance(string? skeleton);
[<Android.Runtime.Register("getInstance", "(Ljava/lang/String;)Landroid/icu/text/DateIntervalFormat;", "", ApiSince=24)>]
static member GetInstance : string -> Android.Icu.Text.DateIntervalFormat

參數

skeleton
String

音程格式所依據的骨架。

傳回

一個日期時間間隔格式化器。

屬性

備註

從骨架和預設 FORMAT 地點構建一個 DateIntervalFormat。

這是對 getInstance(String skeleton, ULocale locale) 的方便覆寫,預設 locale 值為 locale FORMAT 。

Java 文件 android.icu.text.DateIntervalFormat.getInstance(java.lang.String)。

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

適用於

GetInstance(String, DateIntervalInfo)

從骨架 DateIntervalInfo 和預設 FORMAT 位置建立一個 DateIntervalFormat。

[Android.Runtime.Register("getInstance", "(Ljava/lang/String;Landroid/icu/text/DateIntervalInfo;)Landroid/icu/text/DateIntervalFormat;", "", ApiSince=24)]
public static Android.Icu.Text.DateIntervalFormat? GetInstance(string? skeleton, Android.Icu.Text.DateIntervalInfo? dtitvinf);
[<Android.Runtime.Register("getInstance", "(Ljava/lang/String;Landroid/icu/text/DateIntervalInfo;)Landroid/icu/text/DateIntervalFormat;", "", ApiSince=24)>]
static member GetInstance : string * Android.Icu.Text.DateIntervalInfo -> Android.Icu.Text.DateIntervalFormat

參數

skeleton
String

音程格式所依據的骨架。

dtitvinf
DateIntervalInfo

將採用 DateIntervalInfo 物件。

傳回

一個日期時間間隔格式化器。

屬性

備註

從骨架 DateIntervalInfo 和預設 FORMAT 位置建立一個 DateIntervalFormat。

這是 getInstance(String skeleton, ULocale locale, DateIntervalInfo dtitvinf) 的一個方便覆蓋,預設 locale 值 FORMAT 為 locale。

Java 文件 android.icu.text.DateIntervalFormat.getInstance(java.lang.String, android.icu.text.DateIntervalInfo)。

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

適用於

GetInstance(String, ULocale)

從骨架和指定地點構建一個DateIntervalFormat。

[Android.Runtime.Register("getInstance", "(Ljava/lang/String;Landroid/icu/util/ULocale;)Landroid/icu/text/DateIntervalFormat;", "", ApiSince=24)]
public static Android.Icu.Text.DateIntervalFormat? GetInstance(string? skeleton, Android.Icu.Util.ULocale? locale);
[<Android.Runtime.Register("getInstance", "(Ljava/lang/String;Landroid/icu/util/ULocale;)Landroid/icu/text/DateIntervalFormat;", "", ApiSince=24)>]
static member GetInstance : string * Android.Icu.Util.ULocale -> Android.Icu.Text.DateIntervalFormat

參數

skeleton
String

音程格式所依據的骨架。

locale
ULocale

給定地點

傳回

一個日期時間間隔格式化器。

屬性

備註

從骨架和指定地點構建一個DateIntervalFormat。

在此工廠方法中,日期區間模式資訊是從資源檔案載入。 鼓勵使用者以此方式建立日期區間格式化器,並使用預先定義的骨架巨集。

DateFormat 中有預設的骨架,例如 MONTH_DAY、YEAR_MONTH_WEEKDAY_DAY 等。

這些骨架在資源檔案中有預先定義的區間模式。 鼓勵用戶使用這些資訊。 例如:DateIntervalFormat.getInstance(DateFormat.MONTH_DAY, false, loc);

給定的地點提供音程模式。 例如,對於en_GB,若骨架為YEAR_ABBR_MONTH_WEEKDAY_DAY,即「yMMMEEEd」,則資源檔案中定義的區間模式為:年份的「EEE, d MMM, yy - EEE, d MMM, yyyy」代表年份不同,「EEE, d MMM - EEE, d MMM, yyyy」代表月份不同,「EEE, d - EEE, d MMM, yyyy」代表日期不同,

Java 文件 android.icu.text.DateIntervalFormat.getInstance(java.lang.String, android.icu.util.ULocale)。

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

適用於