ホームページ >Java >&#&チュートリアル >Java でロケール固有の書式文字列を使用して日付を書式設定する方法

Java でロケール固有の書式文字列を使用して日付を書式設定する方法

Barbara Streisand
Barbara Streisandオリジナル
2024-11-15 01:14:02818ブラウズ

How to Format Dates with Locale-Specific Format Strings in Java?

ロケール固有の書式文字列を使用した日付の書式設定

Java では、通常、日付の書式設定に SimpleDateFormat クラスが使用されます。ただし、さまざまなロケールのデータを扱う場合は、ロケール固有の書式設定要件を考慮することが不可欠になります。

たとえば、指定されたタスクには、「11 月 1 日」と表示するなど、ユーザーのロケールに基づいて日付を異なる書式設定することが含まれます。 , 2009" (英語) および "1. nov. 2009" (ノルウェー語)。

SimpleDateFormat コンストラクターではロケールを指定できますが、それは形式文字列の月の部分にのみ適用されます。この課題に対処するには、ロケールと組み合わせた複数の形式文字列を SimpleDateFormat に直接追加することはできません。

代替解決策: DateFormat.getDateInstance

SimpleDateFormat に依存する代わりに、推奨されるアプローチは、DateFormat.getDateInstance(int style, Locale locale) メソッドを使用することです。このメソッドは、ロケール固有の書式文字列を持つ Date インスタンスを取得する便利な方法を提供します。

DateFormat.getDateInstance の使用方法の例を次に示します。

// For English locale
DateFormat englishFormat = DateFormat.getDateInstance(DateFormat.LONG, Locale.ENGLISH);

// For Norwegian locale
DateFormat norwegianFormat = DateFormat.getDateInstance(DateFormat.LONG, Locale.NORWEGIAN);

// Parse a date
Date date = Date.parse("2009-11-01");

// Format the date in English
String englishFormattedDate = englishFormat.format(date);

// Format the date in Norwegian
String norwegianFormattedDate = norwegianFormat.format(date);

DateFormat を使用します。 getDateInstance を使用すると、複雑な書式文字列を手動で構築することなく、ロケール固有の方法で日付を簡単に書式設定できます。

以上がJava でロケール固有の書式文字列を使用して日付を書式設定する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。