CDEFGHIJSTUVWXYZcdefghijstuvwxyz

CDEFGHIJSTUVWXYZcdefghijstuvwxyz

我有这样的字节数组字符串,它是由Android上的Base64方法编码的,就像这样一个

return Base64.encodeToString(b, Base64.URL_SAFE);


所以我将其调整到我的网络api中,得到了这样的内容(这是我的字节数组)


iVBORw0KGgoAAAANSUhEUgAAAgAAAAGACAIAAABUQk3oAAAAA3NCSVQICAjb4U_gAAAgAElEQVR4 nOy925IkSZIddo6aR9ZcdoWEQIR4Af__Wyh4Iz-AT5AVPhAQrIC705VhevigFzOPiKrO7unZ7axx nZ6sCA93c3NzM70cvRj_6f_9vwEAhqT-AECAzh - T9ouJkSAeTm3FsTzXb5Fnlc_t_26nw7unSQU p3U3XtJqR5D4gcfUywYfjwg6H3u6JNv5yFA808urPviavj8gF30m-h__7Z_-r__r__yn__pf39_f
..............................................
PRqEJ9oLFmsrpX1vhBXq82y1knRVUKFRwRwDgy8EiWTGfD5ZvpEz2dB54fIv8sgaY1oHz-e0M_l0 Fa1ym728AKyom8xstoaVBhv0YolD1jkAInXMwVi9JEXcfUqgHTSZz7oIYwzjGHYjRiXJOX2XLDkE H1uv5MqlbdqjV4KD20eaW6rv4-HT0ePbQicqOzC7_wsSX-sS9mzikrwvurHr_rux9-h8ijOejjxc uwmAl8bX6wf5G_HTj7D7j9z6I4Lkor9Tan-mmQGTUWYgImFgoEnOrPsQVzQgJCnD8yFxAyw21d2E SB5TJNFyNSAA1HbuJmNq9ff_tbF3Vth9OwLye3YKpT12S53VfH5wVCSP3JvZcGvq8


我也在客户端使用了另一种方法,它像这样响应我


������JFIF��������������C������C��������''。 ��������������
1AQa“q2���#B��R��$ 3br。
%&'()* 456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz���������������������������� ����������������������������������������
1AQaq“2�B����#3Rbr。
$4�%�&'()56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz������������������������������������ ������������������������W5���K4(�ڇR + $Sk�W��yd��yŬ,�� oR��#-9,9,ӗb'Nx�sJ����z�����<?�$+��� a����rMz|֝t�b�\�� C ��$.I��Q�Q�Q��3��S�k�;w�ɽ�6��<7��թR�Qvs��*��z���+�ngtӊ,|�<��}ON�=O�\��3�Y4�q��ipy��m��$����29�q��y9䁀x�=�䍣>)�O_6��d:,fISq!_ϕQ�'������ $��k��IW��; /ek��N�e�E�\ %��%yUR��uի���S�K。[��4〜`f; \�ݹ��*��Ǯy����k>�4


哪个是对的 ?

如何将其转换为byte []?

我发现这两种方法一种有效,但是文件已损坏,另一种受到了损害。

方法1:

 static byte[] GetBytes(string str)
    {
        byte[] bytes = new byte[str.Length * sizeof(char)];
        System.Buffer.BlockCopy(str.ToCharArray(), 0, bytes, 0, bytes.Length);
        return bytes;
    }


方法2(执行):

public static byte[] StringToByteArray(string hex)
    {
        return Enumerable.Range(0, hex.Length)
                         .Where(x => x % 2 == 0)
                         .Select(x => Convert.ToByte(hex.Substring(x, 2), 16))
                         .ToArray();
    }


那我该怎么办??

最佳答案

在C#中,您具有:Byte[] bytes = Convert.FromBase64String(s);

10-04 17:36