- PR -

マルチ言語対応の標準的開発方法ってあります?

1
投稿者投稿内容
ジーニ
常連さん
会議室デビュー日: 2002/08/27
投稿数: 21
投稿日時: 2003-05-22 16:19
.NETでシステム開発しています。
日本語以外の他国語対応を検討していますが、その標準的管理(開発)方法って
あるのでしょうか?データの持ち方/管理の仕方。
他国語の範囲は、画面表示の語句とメッセージ系です。
※注意)任意に入力する文字の翻訳ではありません。

 みなさんどんな方法で対応していますか、教えてください。

以上よろしくお願いします。
Dr. K
常連さん
会議室デビュー日: 2003/04/26
投稿数: 25
投稿日時: 2003-05-22 17:49
引用:

他国語の範囲は、画面表示の語句とメッセージ系です。


個人的には、.NET 以前のWindows上では、言語ごとにリソースをIntl.dllなどと名づけたモジュールに格納して適切なDLLを起動時に呼ぶようにするのが、標準と考えています。
.NET の場合はどうなんでしょうね。僕もみなさんの意見を聞いてみたいです。
XML形式で用意しておくのもいいんじゃないでしょうか。
僕はとりあえず、言語ごとにメッセージ用の構造体を宣言しておいて、言語を変えたいときに、構造体を置き換えて再コンパイルするという恐ろしい(?)ことをやっていますけど・・・
誰かいい方法教えて下さい。
rvmx
大ベテラン
会議室デビュー日: 2002/09/26
投稿数: 184
お住まい・勤務地: 愛媛県
投稿日時: 2003-05-22 19:14
こんにちは

私のやり方は、正しいかどうか分かりませんが。
localizable=true
language=規定値
とし英語で開発し、その後必要な言語にlanguageを変更し
画面表示は変更しています。
自動的に英語であればen、日本語であればjpのフォルダーが作られ
その下にdllとして管理されています。
但しメツセージは外部フアイルで持ち画面表示の語句より必要な
言語のメツセージフアイルを読み込んでいます。
メッージがもっといい方法があるのではと思っています。
Izumi, Y.
ベテラン
会議室デビュー日: 2002/03/19
投稿数: 77
お住まい・勤務地: 東京
投稿日時: 2003-05-23 05:05
おっと,同じ内容のスレッドが 2 つありましたね。気づきませんでした。
皆さんこちらに回答されているようなので,別のスレッドに書いてしまった私の回答を以下に引用しておきます。
引用:

.NET に限らず,Windows ではリソースを利用するのが正統のはず。
特に .NET Framework ではこの辺の機能が強化されています。「ローカライズ」「サテライト アセンブリ」などのキーワードでヘルプを検索すれば,それらしい解説が表示されると思います。


上で rvmx さんが書かれていることはこれの一部にあたります。
あと,.NET の場合,いわゆるリソース文字列は .resx という拡張子のファイル(VS.NET だと新規作成の「アセンブリ リソース ファイル」で追加できます)から作成するのですが,この .resx ファイルの中身は XML です。

問題は,rvmx さんも指摘していますが,ファイルが複数になってしまうことです。
ResourceManager クラスと CultureInfo.CurrentUICulture プロパティをうまく利用すれば何とかならないこともないですが…


[ メッセージ編集済み 編集者: IZUMI Yusuke 編集日時 2003-05-23 05:19 ]
ジーニ
常連さん
会議室デビュー日: 2002/08/27
投稿数: 21
投稿日時: 2003-06-13 19:12
みなさんご指導ありがとうございました。

.NET側で、Resoucemanagimenntの機能がありそれでマルチ言語を対応
しよう考えています。

以 上
1

スキルアップ/キャリアアップ(JOB@IT)