2

我继承了一些 C# 代码。此代码需要将图片上传到 Web 服务。此代码将图片的字节保存到byte[]被调用的ImageBytes. 为了确保最大的可移植性,我想首先将其编码ImageBytes为 base 64 编码字符串。我相信下面的代码正在这样做,但是,我不确定。有人可以验证我的假设是否正确吗?

StringBuilder sb = new StringBuilder();
this.ImageBytes.ToList<byte>().ForEach(x => sb.AppendFormat("{0}.", Convert.ToUInt32(x)));

此代码是否将 mybyte[]转换为 base 64 编码字符串?

谢谢!

4

3 回答 3

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);
}
于 2012-08-04T15:17:39.267 回答
2

使用Convert.ToBase64String()方法。它接受一个字节数组作为参数并返回转换后的字符串。

于 2012-08-04T15:17:23.443 回答
1

不,这只是将其转换为整数列表。

使用Convert.ToBase64String()。假设ImageBytesbyte[]

var base64Output = Convert.ToBase64String(ImageBytes);
于 2012-08-04T15:18:47.547 回答