0

これは問題ではないかもしれませんが、私は SO の収集された知恵を参考にして見つけてください。

エンコーディングがプラットフォーム間で一貫していることを確認しようとしています。行くべき道は明らかにUTF8です。ただし、一部のプラットフォームでは、残念ながら拡張 ASCII (通常は Windows コードページの何らかの形式) が使用されます。Windows コードページから UTF8 にウムラウトなどで何かをエンコードする場合、文字の UTF8 内で複数の可能な選択肢があることが懸念されます。

別のプラットフォーム (Linux、Mac OS) で、そこで選択された UTF8 文字が一貫していることをどのように確認しますか?

私が言ったように、多分これは問題ではありません。私が知らない標準的なマッピングがあるかもしれません。問題は見られませんでしたが、同僚が懸念を表明したので、情報を探しています.

よろしくお願いします。

4

2 に答える 2

1

ユニコードコンソーシアムは、一連のマッピングテーブルをまとめました。名目上情報提供であり、事実上の標準を構成します。さらに、Unicodeに関して、つまり各文字のUnicode番号(および/またはUnicode名)を指定することによって新しい文字エンコードを定義することが通常になっているため、そこにあるマッピングの多くは正式な標準を反映しています。

文字がUnicode(つまり、UnicodeコードポイントまたはUnicode番号)にマップされると、UTF-8などの各Unicodeエンコーディングでのそのエンコーディングが明確に定義されます。

したがって、問題は、使用する変換ルーチンがこれらのテーブルに従って機能することをどのように確認するかです。ICUの使用は、この点で安全であると見なすことができます。

PS拡張ASCIIはありません。さまざまな文字エンコードがあり、0〜0x7Fの範囲でASCIIと一致するものもあれば、一致しないものもあります。

于 2012-10-10T06:11:56.230 に答える
1

最初に元のテキストを適切に Unicode に変換し、Utf8 を使用してデータを保存/転送する限り、問題はありません。

于 2012-10-09T23:49:25.903 に答える