私はバイトサイズの配列がどのように文字列よりも小さいか理解しようとしています。私は文字列の各文字が2バイトのようなものであることを知っています。しかし、その数学は合わない。誰かが私のためにいくつかの光を発することができますか?バイト配列のサイズが文字列サイズと等しくないのはなぜですか?
次
byte[] myBytes = Encoding.ASCII.GetBytes("12345");
string myString = Convert.ToBase64String(myBytes);
Debug.WriteLine("Size of byte array: " + myBytes.Length);
Debug.WriteLine("Size of string: " + myString.Length);
戻り値:バイト配列の
サイズ:文字列の5
サイズ:8
結果のB64文字列を見てください - それは8文字になります – Plutonix
@Plutonix正しいことは 'MTIzNDU ='になります。しかし、それは問題です、私はスクリプトが 'MTIzNDU ='ではなく '12345'であると期待しています。それが私の混乱の原因です。 –
違うようにエンコードすると、同じままになるのはなぜですか? Base64!= ASCII – Plutonix