我发送了一个 WebRequest,并在我的内容中得到了一个带有 XML 代码的字符串作为响应。
WebRequest request = WebRequest.Create("...");
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
Stream dataStream = response.GetResponseStream();
StreamReader reader = new StreamReader(dataStream);
string responseFromServer = reader.ReadToEnd();
byte[] bytes = Convert.FromBase64String(responseFromServer);
Image image;
using (MemoryStream ms = new MemoryStream(bytes))
{
image = Image.FromStream(ms);
}
image.Save("File", System.Drawing.Imaging.ImageFormat.Gif);
问题是“Convert.FromBase64String(responseFromServer)”无法转换为 Base 64,因为响应是:
"<string xmlns="*LINK*"> 'content' </string>"
我可以删除这些标签,或者复制内容吗?
我希望你能解决我的问题:)感谢您的帮助,对于糟糕的英语感到抱歉x)
最佳答案
您可以使用 XmlDocument..
WebRequest request = WebRequest.Create("...");
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
Stream dataStream = response.GetResponseStream();
StreamReader reader = new StreamReader(dataStream);
XmlDocument doc = new XmlDocument();
doc.Load(reader);
byte[] bytes = Convert.FromBase64String(doc.GetElementsByTagName("string")[0].InnerText);
System.Drawing.Image image;
using (MemoryStream ms = new MemoryStream(bytes))
{
image = System.Drawing.Image.FromStream(ms);
}
关于C# - 当 webRequest 发送 XML 时,将 Base64 安全为 Gif?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42719396/