C#转换为Base64->字节[]


92

我有一个Base64 byte[]从流中传输的 数组,我需要将其转换为正常的流byte[]


什么是“ Base64 byte[]”?它采用什么编码?
Slaks 2011年

2
你可以把代码放在这里吗?
Fereydoon Barikzehy

是的,我认为您没有Base64 byte[]。如果采用Base64格式,则为字符串。
vapcguy

Answers:




7

尝试

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

您正在寻找FromBase64Transform与该CryptoStream班级一起使用的班级。

如果您有字符串,也可以致电Convert.FromBase64String


3

为此,我写了一个扩展方法:

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();

希望对您有所帮助。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.