我在一个字符串中有 XML 内容,它在声明中定义了它的编码。我想从该字符串中获取字节数组并将其下载到客户端浏览器。
以下是有效的,但我对编码没有那么丰富的经验,我想知道如果我这样做会导致某些东西爆炸吗?
基本上,我从声明中获取编码,并使用该编码将 XML 字符串转换为字节数组。 它应该这样工作吗?
var xdoc = XDocument.Parse(xmlString);
var encoding = System.Text.Encoding.GetEncoding(xdoc.Document.Declaration.Encoding);
var encoded = encoding.GetBytes(xmlString);
Response.AppendHeader("Content-Disposition", "attachment; filename=" + xmlData.FileName);
return File(encoded, "text/plain");
最佳答案
您应该在 GetEncoding 周围放置一个异常处理程序 - 如果它无法识别编码名称,它将抛出。否则你很好。
关于c# - 使用编码从 XML 字符串中获取字节数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9297545/