C # конвертировать Base64 -> байт [] - PullRequest
58 голосов
/ 18 июля 2011

У меня есть массив Base64 byte[], который передается из потока, который мне нужен, чтобы преобразовать его в обычный byte[] как это сделать?

Ответы [ 5 ]

112 голосов
/ 18 июля 2011

Вы должны использовать Convert.FromBase64String , чтобы превратить Base64 в кодировке string в byte[].

26 голосов
/ 23 января 2015

Это может быть полезно

byte[] bytes = System.Convert.FromBase64String(stringInBase64);
6 голосов
/ 18 июля 2011

Попробуйте

byte[] incomingByteArray = receive...; // This is your Base64-encoded bute[]

byte[] decodedByteArray =Convert.FromBase64String (Encoding.ASCII.GetString (incomingByteArray)); 
// This work because all Base64-encoding is done with pure ASCII characters
3 голосов
/ 18 июля 2011

Вы ищете класс FromBase64Transform, используемый с классом CryptoStream.

Если у вас есть строка, вы также можете вызвать Convert.FromBase64String.

2 голосов
/ 26 мая 2015

Для этой цели я написал метод расширения:

public static byte[] FromBase64Bytes(this byte[] base64Bytes)
{
    string base64String = Encoding.UTF8.GetString(base64Bytes, 0, base64Bytes.Length);
    return Convert.FromBase64String(base64String);
}

Назовите его так:

byte[] base64Bytes = .......
byte[] regularBytes = base64Bytes.FromBase64Bytes();

Надеюсь, это кому-нибудь поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...