我继承了一些C#代码。此代码需要将图片上传到Web服务。此代码将图片字节保存到名为byte[]
的{{1}}。为了确保最大的可移植性,我想首先将ImageBytes
编码为基本64位编码的字符串。我相信以下代码正在这样做,但是,我不确定。有人可以验证我的假设是否正确吗?
ImageBytes
此代码是否将我的StringBuilder sb = new StringBuilder();
this.ImageBytes.ToList<byte>().ForEach(x => sb.AppendFormat("{0}.", Convert.ToUInt32(x)));
转换为基本的64位编码字符串?
谢谢!
答案 0 :(得分:5)
使用方法System.Convert.ToBase64String()
和System.Convert.FromBase64String()
例如
public static string EncodeTo64(string toEncode)
{
byte[] toEncodeAsBytes = Encoding.ASCII.GetBytes(toEncode);
return Convert.ToBase64String(toEncodeAsBytes);
}
public static string DecodeFrom64(string encodedData)
{
byte[] encodedDataAsBytes = Convert.FromBase64String(encodedData);
return Encoding.ASCII.GetString(encodedDataAsBytes);
}
答案 1 :(得分:2)
使用Convert.ToBase64String()
方法。它将一个字节数组作为参数并返回转换后的字符串。
答案 2 :(得分:1)
不,那只是将其转换为整数列表。
使用Convert.ToBase64String()。假设ImageBytes
是byte[]
:
var base64Output = Convert.ToBase64String(ImageBytes);