[return: System.Xml.Serialization.XmlElementAttribute("return", DataType="base64Binary")]
public byte[] get(...)
我正在尝试从此Web服务获取xml(utf-8)。我尝试了多种方法来尝试将xml从字节数组中取出:
stream
encoding
decoder
converter
[额外信息] 使用Encoding.UTF8.GetString(bytes)解码字节数组时 我得到一个带有奇怪的符号和符号的字符串,但也有一些文字 从:%PDF-1.4
开始[溶液] 将字节数组写入pdf文件使其可读。
答案 0 :(得分:1)
您可以尝试Convert.ToBase64String
。
答案 1 :(得分:1)
我认为Web服务提供的字节流只是base64编码的数据,表示为整数而不是字符。我相信base64字符是ASCII的子集,所以你需要将字节数组转换为ASCII(即base64表示为字符),然后从base64转换这些字符:
var base64AsAscii = Encoding.ASCII.GetString(bytesFromWebService);
var decodedBytes = Convert.FromBase64String(bytesAsAscii);
var text = Encoding.UTF8.GetString(decodedBytes);