C# - 当 webRequest 发送 XML 时,将 Base64 安全为 Gif?

标签 c# xml image base64 webrequest

我发送了一个 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/

相关文章:

image - 替换 GL_LUMINANCE、GL_LUMINANCE_ALPHA​

javascript - 根据用户机器屏幕尺寸缩放图像作为背景

c# - Windows Phone 8.1 媒体捕获方向 C#

java - 使用 Java 将表从数据库导出到 XML 文件

android - 允许用户为 Cordova 插件指定 Gradle 依赖

xml - 如何查明属性是否存在于 XSL 中

c# - 以编程方式调用按钮单击

c# - 动态字符串/List<string> 参数的最佳实践

c# - 为什么我的 SqlConnection 在关闭后仍保留在 SSMS 进程列表中?

python - 在 Python 中识别图像