2009-04-24 1 views
0

私はerlangと配布されたdb Mnesiaで少し演奏しています。Erlangの.Net UTF-8文字列

私が直面している最初の問題の1つは、erlangと.Net UTF-8文字列の 'int list'文字列の間に互換性がありません。

良い変換ライブラリはありますか?

おかげ

+2

.NET文字列は、本質的にUTF-8ではなくメモリ内のUTF-16です。 UTF-8は、エンコードを省略した場合、ほとんどのAPIで使用されるデフォルトのエンコードです。 –

答えて

3

のErlangの新しいR13Bリリースはユニコードのためのより良いサポートしています。

新しいUnicodeモジュールはhereと文書化されており、実装されているUnicodeサポートはEEP 10(Erlang Enhancement Proposal 10)に記載されています。

1

は、私の知る限りはそうSystem.Text.Encoding.UTF32がリストのためにint型を取得するためにトリックを行う可能性があります使用して、アーランはUTF32を使用して、見てきたように、あなたはそれらのリストを作成する必要があります。しかし、テストされていません。

次のスニペットは、(それはErlangのリストについては、期待されるものと一致している必要がありユニコードintの配列を作成します)に役立つことがあります。

public static int[] GetIntsForString(string source) { 
    byte[] data = System.Text.Encoding.UTF32.GetBytes(source); 
    int[] result = new int[source.Length]; 
    for (int i = 0; i < source.Length; i++) { 
     result[i] = BitConverter.ToInt32(data, i*4); 
    } 
    return result; 
} 
+0

例がありますか? –

+0

編集ヘルプに追加されているものがありますか、それとも他に助けが必要なものがありますか? – Lucero

関連する問題