0

WindowsとMacの両方で動作するはずのアプリケーションがあり、ポルトガル語、スペイン語、ドイツ語にローカライズされています。ローカライズされた文字列が読み取られるiniファイルがあります。ただし、iniファイルは、両方のプラットフォームのファイルに対して同じエンコーディングでは機能しません。Windowsの場合、ファイルをANSI形式にする必要があります。そうしないと、ローカライズされた文字列のアクセント付き文字が台無しになり、Macの場合、同じファイルがWestern(Mac OS)エンコーディングであるか、同じ結果になるはずです。1つのファイルを両方のプラットフォームで動作させる方法はありますか?

4

4 に答える 4

3

(1) ANSI形式ようなものはありません。これは、Windowsで「ローカルコードページ」を意味するものの不幸な用語です。特に、これは、ヨーロッパでは、128〜255バイトの「ANSI形式」としての解釈が国によって異なることを意味します。ですから、両方は言うまでもなく、最初のプラットフォームでも機能しないと強く主張する傾向があります。

最終的に移行するソリューションはUnicodeです。これは、すべての文字でどこでも機能し、文字の数は国や現在の日付に依存しません(€の紹介を参照)。

于 2008-10-03T14:20:58.153 に答える
1

Mac では、ローカライズされたリソース (テキスト ファイルなど) を .lproj フォルダー内に置くことができ、Cocoa ライブラリはユーザーの言語のバージョンを見つけます。たとえば、English.lproj、Spanish.lproj などです。独自のカスタム ローカリゼーション メカニズムを使用する代わりに、このシステムを使用する方が適切です。

Cocoa 以外のものを使用していて、移植性の理由から独自のローカリゼーションを使用する必要がある場合は、テキスト エンコーディングを指定してファイルを読み込んでみることができます。Windows では、通常は ISO-8859-1 (Windows Latin 1 とも呼ばれます) です。または、テキスト ファイルを Unicode に変換し、UTF-8 であることを指定して読み取ることができます。これに使用している言語またはフレームワークを教えていないため、これ以上の情報がなければこれ以上お手伝いできません.

于 2008-12-18T18:10:37.723 に答える
0

gettextは、アプリケーションやWebサイトなどの翻訳に広く使用されているフレームワークです。

于 2008-10-03T14:30:40.787 に答える
0

痛みの世界へようこそ。また、Unicode に切り替えることをお勧めします。これにより、最初から検証可能な基礎が得られ、後で作業が楽になります。

于 2009-04-28T07:35:29.013 に答える