NumberFormatInfoとは? わかりやすく解説

NumberFormatInfo クラス

カルチャに応じて数値形式指定および表示する方法定義します

名前空間: System.Globalization
アセンブリ: mscorlib (mscorlib.dll 内)
構文構文

<SerializableAttribute> _
<ComVisibleAttribute(True)> _
Public NotInheritable Class
 NumberFormatInfo
    Implements ICloneable, IFormatProvider
Dim instance As NumberFormatInfo
[SerializableAttribute] 
[ComVisibleAttribute(true)] 
public sealed class NumberFormatInfo : ICloneable,
 IFormatProvider
[SerializableAttribute] 
[ComVisibleAttribute(true)] 
public ref class NumberFormatInfo sealed :
 ICloneable, IFormatProvider
/** @attribute SerializableAttribute() */ 
/** @attribute ComVisibleAttribute(true) */ 
public final class NumberFormatInfo implements
 ICloneable, IFormatProvider
SerializableAttribute 
ComVisibleAttribute(true) 
public final class NumberFormatInfo implements
 ICloneable, IFormatProvider
解説解説

このクラスは、通貨区切り記号その他の数値記号などの情報格納します

特定のカルチャの NumberFormatInfo作成するには、そのカルチャの CultureInfo を作成し、CultureInfo.NumberFormat プロパティ取得します現在のスレッドのカルチャに対して NumberFormatInfo作成するには、CurrentInfo プロパティ使用します。インバリアント カルチャの NumberFormatInfo作成するには、読み取り専用バージョンでは InvariantInfo プロパティ使用し書き込み可能バージョンでは NumberFormatInfo コンストラクタ使用しますニュートラル カルチャの NumberFormatInfo作成できません。

ユーザーは、[コントロール パネル] の [地域と言語オプション] (オペレーティング システムによっては [地域オプション] または [地域]) を使用してWindows現在のカルチャに関連付けられた値の一部オーバーライドすることもできます。たとえば、ユーザー別の形式日付表示したり、カルチャの既定通貨以外の通貨使用したりすることを選択する場合あります。CultureInfo.UseUserOverride プロパティtrue設定されている場合は、CultureInfo.DateTimeFormat、CultureInfo.NumberFormat、CultureInfo.TextInfo の各インスタンスプロパティユーザー設定から取得されます。ユーザー設定CultureInfo関連付けられたカルチャとの間に互換性ない場合 (たとえば、選択されカレンダーが OptionalCalendars のいずれかない場合)、メソッド結果およびプロパティの値は未定義です。

数値は、NumberFormatInfoプロパティ格納されている標準パターンまたはカスタム パターン使用して形式指定します。値を表示する方法変更するには、カスタム パターンプロパティ保存するために、NumberFormatInfo書き込み可能にする必要があります

標準パターン標準形式指定文字と、設定して標準パターン変更できる関連付けられた NumberFormatInfo プロパティ次の表に示します

書式指定文字

説明および関連付けられたプロパティ

c, C

通貨書式。 CurrencyNegativePattern, CurrencyPositivePattern, CurrencySymbol, CurrencyGroupSizes, CurrencyGroupSeparator, CurrencyDecimalDigits, CurrencyDecimalSeparator.

d, D

Decimal 形式

e, E

Scientific (指数) 形式

f, F

Fixed-point 形式

g, G

General 形式

n, N

Number 形式。 NumberNegativePattern, NumberGroupSizes, NumberGroupSeparator, NumberDecimalDigits, NumberDecimalSeparator.

r, R

Roundtrip 形式。この形式では、文字列変換され数値は、数値再変換したときに同じ値になります

x, X

Hexadecimal 形式

ニュートラル カルチャを除くインバリアント カルチャまたは特定のカルチャに対してだけ、DateTimeFormatInfo または NumberFormatInfo作成できます。インバリアント カルチャ、特定のカルチャ、およびニュートラル カルチャの詳細については、CultureInfo クラストピック参照してください

このクラスは、NumberFormatInfo オブジェクト複製できるようにする ICloneable インターフェイス実装ます。アプリケーション形式指定情報提供するために、IFormatProvider も実装ます。

使用例使用例

対応する CultureInfoNumberFormatInfo取得し、その NumberFormatInfo使用してそのカルチャの数値形式指定情報問い合わせる方法次のコード例示します

using System;
using System.Globalization;
using System.Text;

public sealed class App 
{
    static void Main() 
    {
        StringBuilder sb = new StringBuilder();

        // Loop through all the specific cultures known to the CLR.
        foreach (CultureInfo ci in CultureInfo.GetCultures(CultureTypes.SpecificCultures))
 
        {
            // Only show the currency symbols for cultures that speak
 English.
            if (ci.TwoLetterISOLanguageName != "en")
 continue;
             
            // Display the culture name and currency symbol.
            NumberFormatInfo nfi = ci.NumberFormat;
            sb.AppendFormat("The currency symbol for '{0}'
 is '{1}'",
                ci.DisplayName, nfi.CurrencySymbol);
            sb.AppendLine();
        }
        Console.WriteLine(sb.ToString());
    }
}

// This code produces the following output.
//
// The currency symbol for 'English (United States)' is '$'
// The currency symbol for 'English (United Kingdom)' is ''
// The currency symbol for 'English (Australia)' is '$'
// The currency symbol for 'English (Canada)' is '$'
// The currency symbol for 'English (New Zealand)' is '$'
// The currency symbol for 'English (Ireland)' is '?'
// The currency symbol for 'English (South Africa)' is 'R'
// The currency symbol for 'English (Jamaica)' is 'J$'
// The currency symbol for 'English (Caribbean)' is '$'
// The currency symbol for 'English (Belize)' is 'BZ$'
// The currency symbol for 'English (Trinidad and Tobago)' is 'TT$'
// The currency symbol for 'English (Zimbabwe)' is 'Z$'
// The currency symbol for 'English (Republic of the Philippines)' is
 'Php'
using namespace System;
using namespace System::Globalization;
using namespace System::Text;

int main()
{
    StringBuilder^ builder = gcnew StringBuilder();

    // Loop through all the specific cultures known to the CLR.
    for each(CultureInfo^ culture in 
        CultureInfo::GetCultures (CultureTypes::SpecificCultures)) 
    {
        // Only show the currency symbols for cultures 
        // that speak English.
        if (culture->TwoLetterISOLanguageName == "en")
        {
            // Display the culture name and currency symbol.
            NumberFormatInfo^ numberFormat = culture->NumberFormat;
            builder->AppendFormat("The currency symbol for
 '{0}'"+
                "is '{1}'",culture->DisplayName,
                numberFormat->CurrencySymbol);
            builder->AppendLine();
        }
    }
    Console::WriteLine(builder);
}

// This code produces the following output.
//
// The currency symbol for 'English (United States)' is '$'
// The currency symbol for 'English (United Kingdom)' is 'Ј'
// The currency symbol for 'English (Australia)' is '$'
// The currency symbol for 'English (Canada)' is '$'
// The currency symbol for 'English (New Zealand)' is '$'
// The currency symbol for 'English (Ireland)' is '?'
// The currency symbol for 'English (South Africa)' is 'R'
// The currency symbol for 'English (Jamaica)' is 'J$'
// The currency symbol for 'English (Caribbean)' is '$'
// The currency symbol for 'English (Belize)' is 'BZ$'
// The currency symbol for 'English (Trinidad and Tobago)' is 'TT$'
// The currency symbol for 'English (Zimbabwe)' is 'Z$'
// The currency symbol for 'English (Republic of the Philippines)' is
 'Php'
継承階層継承階層
System.Object
  System.Globalization.NumberFormatInfo
スレッド セーフスレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバ場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照

NumberFormatInfo コンストラクタ


NumberFormatInfo プロパティ


パブリック プロパティパブリック プロパティ

  名前 説明
パブリック プロパティ PositiveSign 関連付けられた数値が正であることを示す文字列を取得または設定します
参照参照

関連項目

NumberFormatInfo クラス
System.Globalization 名前空間
Decimal
CultureInfo クラス

その他の技術情報

書式設定概要

NumberFormatInfo メソッド


NumberFormatInfo メンバ

カルチャに応じて数値形式指定および表示する方法定義します

NumberFormatInfo データ型公開されるメンバを以下の表に示します


パブリック コンストラクタパブリック コンストラクタ
  名前 説明
パブリック メソッド NumberFormatInfo カルチャに依存しない (インバリアントな) NumberFormatInfo クラス新し書き込み可能インスタンス初期化します。
パブリック プロパティパブリック プロパティ
  名前 説明
パブリック プロパティ PositiveSign 関連付けられた数値が正であることを示す文字列を取得または設定します
パブリック メソッドパブリック メソッド
参照参照

関連項目

NumberFormatInfo クラス
System.Globalization 名前空間
Decimal
CultureInfo クラス

その他の技術情報

書式設定概要



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「NumberFormatInfo」の関連用語

NumberFormatInfoのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



NumberFormatInfoのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2024 Microsoft.All rights reserved.

©2024 GRAS Group, Inc.RSS