0

TCP/Port からバイト ストリーム ( ) を読み取りbyte[]、受信した配列のサブセクションをchar[]

私は港の特性も、この港の向こう側の環境もよく知らないと仮定します。私が知っているのは、ポートがあるということだけです。

私が受け取るデータの一部は、エンコードされた英国ポンドの通貨記号 (£) です。変換に ASCII エンコーディングを使用すると、これらの記号は次のようになります。?

var charArray = Encoding.ASCII.GetChars(byteArray);

ただし、UTF-7 を使用すると、すべて問題ありません。

var charArray = Encoding.UTF7.GetChars(byteArray);

UTF-8 を試す場合、これは機能しません。

これは試行錯誤によるものであり、なぜこれが機能したのか完全にはわかりません。先に進んでソリューションを展開するのではなく、なぜこれが機能したのかをもっと理解しようと思いました.

ポートの反対側のシステムが UTF-7 で送信しているだけですか、それとも何か他のことが起こっているのでしょうか?

4

0 に答える 0