こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

アプリケーションのマルチ言語化

ある、C++で書かれたアプリケーションを改造する事になりました。現在は、英語バージョンなのですが、そのアプリをマルチ言語化に対応にする改造ですが、一般的にマルチ言語対応にはどのような方式が使用されているのでしょうか?ご存知の方、またマルチ言語対応のアプリケーションを開発した経験のある方、ご教授を頂ければ幸いです。宜しくお願いいたします。

投稿日時 - 2006-02-20 09:33:11

QNo.1978405

困ってます

質問者が選んだベストアンサー

> 今回は仕組みを自作する方向で考えております。

例えば、対応する言語が英語と日本語だけでよいのであれば、表示される英文と和文の対訳表を作り、std::mapに登録しておくなどすれば、簡単に実現できると思います。

本当の多言語に対応するのであれば、ソースコードに直書きするより、いったんテキストファイルなどに対応表を追い出した方がよいでしょう。
起動時(または言語切り替え時)に対訳テーブルは読み込んでしまうので、パフォーマンス的にはテキストファイルで十分ですが、ユーザーに編集されたくないなどの事情があるなら、スクランブルするなどした方がよいかもしれませんね。

投稿日時 - 2006-02-20 14:00:54

ANo.3

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(3)

ANo.2

Windowsならリソースで切り替えるでしょうし、Unix系ならgettextとかを使うのでしょうね。

環境に依存しない方法をとるのであれば、多言語化の仕組みを自作するか、マルチプラットフォームのライブラリを適当に見繕うしかないと思います。

投稿日時 - 2006-02-20 10:44:13

お礼

早速の回答、ありがとうございます。今回は仕組みを自作する方向で考えております。

投稿日時 - 2006-02-20 13:52:37

ANo.1

文字その他をリソースに分離して、DLL を個別に作るとか。

以下のサイトで、
「複数言語対応アプリの文字コード」
「アプリの複数言語対応」
あたりも参考になるかと。

参考URL:http://www.m--takahashi.com/bbs.htm

投稿日時 - 2006-02-20 09:59:01

お礼

早速の回答、ありがとうございます。非常に参考になるサイトを紹介して頂き、感謝しております。じっくりと研究してみます。

投稿日時 - 2006-02-20 13:53:58

あなたにオススメの質問