エンコーディングとローカリゼーション
更新 : 2007 年 11 月
国際対応アプリケーションを開発するときには、アプリケーションの設計と開発手順におけるさまざまな問題に注意する必要があります。主要な問題としては、グローバリゼーション、ローカライズ対象の確認、ローカリゼーションの 3 つがあります。
開発作業では最初にグローバリゼーションに取り組みます。グローバライズされたアプリケーションは、すべてのユーザーのために、ローカライズされたユーザー インターフェイスと地域データをサポートします。本当にグローバルなアプリケーションは、特定の文化 (カルチャ) や言語に依存しません。ローカリゼーションの前の段階の中間ステップで、ローカライズの可能性をテストします。このステップでは、変換が必要なアプリケーションのリソースをアプリケーションのその他のコードから分離します。ローカリゼーション ステップの前にローカライズの可能性を適切にテストすると、ローカリゼーション段階でアプリケーションのソース コードを変更する必要がありません。ローカリゼーションは、国際対応アプリケーションの開発作業の最後に行います。このステップでは、サポートする特定のカルチャまたは地域に合わせてアプリケーションをカスタマイズします。このステップで中心となるのは、ユーザー インターフェイスを対象言語へ翻訳する作業です。
設計フェーズで早期からグローバリゼーション、ローカライズ対象の確認、ローカリゼーションの要件に対応することで、サポートする言語に対応した優れた品質のローカライズ済みアプリケーションの開発にかかる時間と費用を最小限に抑えることができます。.NET Framework では、国際対応アプリケーション開発に対する拡張サポートが提供されます。このトピックでは、国際対応アプリケーションの設計および開発に役立つ情報について説明します。
詳細については、Visual Studio 2005 のドキュメントからアプリケーションのグローバライズとローカライズの関連ドキュメント、「International Support Evolves in Windows XP」(https://msdn.microsoft.com/msdnnews/2001/july/xpinternat/xpinternat.asp)、および「Microsoft Global Development and Computing Portal」(www.microsoft.com/globaldev) を参照してください。
このセクションの内容
エンコーディングとローカリゼーションの概要
マネージ コードでの国際対応アプリケーション設計の 3 つの手順と、このモデルの利点について説明します。CultureInfo クラスの使用
CultureInfo クラスと、CurrentUICulture、CurrentCulture、InvariantCulture の各プロパティの設定方法および使用方法について説明します。方法: カスタム カルチャを作成する
CultureAndRegionInfoBuilder クラスを使用してユーザー定義のカルチャを作成する方法について説明します。固有カルチャのリソースの検索と使用
ResourceManager クラスが実行時に CurrentUICulture プロパティに基づいてカルチャ固有のリソースにアクセスする方法について説明します。Windows ロケールから生成されたカルチャ
.NET Framework に存在しないカルチャが Windows のロケールから自動的に作成されるしくみについて説明します。RegionInfo オブジェクトに関連付けられている名前
各地域に関連付けられたさまざまな名前について説明します。.NET Framework での Unicode
文字およびテキストの Unicode 汎用文字エンコーディング スキームについて説明し、.NET Framework でこのスキームを内部的に使用する上での利点について説明します。文字列インデックス付け
StringInfo クラスを使用して、テキスト要素を列挙し、テキスト要素を反復処理する方法について説明します。LDML データを使用したカルチャの記述
Microsoft が LDML を使用してカルチャの情報を格納する方法について説明します。固有カルチャの日付と時刻の形式指定
DateTime 構造体を使用して、固有カルチャに合わせて日付の形式を指定する方法を説明します。書式設定されたデータの表示と保存
カルチャを使用して、ファイルまたはメモリ内に格納されているデータの形式を指定する方法と、ユーザーに表示するデータの形式を指定する方法の違いについてガイドラインを示します。固有カルチャに対応した暦の使用
Calendar クラスと CultureInfo クラスを使用して、固有カルチャに合わせて暦を表示および操作する方法について説明します。固有カルチャの数値データの書式指定
NumberFormatInfo クラスを使用して、通貨、桁区切り記号、およびその他の数値記号をカルチャに基づいて形式指定し、表示する方法について説明します。固有カルチャのデータの比較と並べ替え
カルチャ固有の並べ替え規則および言語固有の並べ替え規則をサポートするために、カルチャ別にデータを比較および並べ替える方法について説明します。カルチャを認識しない文字列操作
既定ではカルチャが識別される .NET Framework のメソッドやクラスを使用して、カルチャが識別されない結果を取得する方法について説明します。推奨される国際対応アプリケーション開発手順
国際対応 ASP.NET アプリケーションのグローバリゼーション、ローカリゼーション、および開発の推奨手順について説明します。アプリケーションのリソース
リソースの作成とローカライズにおける .NET Framework のサポートについて説明し、ローカライズ済みリソースのパッケージ化および配置のサテライト アセンブリ リソース モデルについて説明します。正規化と並べ替え
カルチャに依存しない並べ替えを実行できるように文字列を準備する方法を説明します。エンコーディングの理解
適切なエンコーディングを選択する方法およびフォールバックを作成する方法について説明します。
参照
System.Globalization 名前空間
言語、国/地域、使用する暦、日付、通貨、通知の書式パターン、文字列の並べ替え順序など、カルチャ関連の情報を定義するクラスが含まれています。System.Resources 名前空間
リソースを作成、操作、および使用するためのクラスが格納されている名前空間です。System.Text 名前空間
ASCII、ANSI、Unicode、UTF-7、UTF-8 およびその他の文字エンコーディングを表すクラスが格納されている名前空間です。リソース ファイル ジェネレータ (Resgen.exe)
Resgen.exe を使用して .txt ファイルと XML ベース リソース フォーマット (.resx) ファイルを共通言語ランタイムのバイナリ .resources ファイルに変換する方法について説明します。Windows フォーム リソース エディタ (Winres.exe)
Winres.exe を使用して Windows フォームのフォームを簡単にローカライズする方法について説明します。
関連するセクション
ASP.NET クイック スタート
ローカリゼーション カテゴリに、カルチャとエンコーディングの設定、ASP.NET アプリケーションのローカリゼーション、およびリソース ファイルの動作に関するサンプルが収録されています。共通タスクのクイック スタート
グローバリゼーションと国別言語サポート (NLS: National Language Support) のサンプル (CultureRegion サンプル、MultipleEncodings サンプル、Encoding サンプル、および MultiCurrency サンプル) が収録されています。リソース サンプル (リソースの作成、リソースの使用、リソースの読み込みと書き込み、および、リソース リーダーの作成) が収録されています。