c# - 如何将 xmldocument 保存到流中

标签 c# xmldocument xmlreader

我已经编写了代码来使用 XmlReader 解析我的 xml 文件,所以我不想重写它。我现在已经为程序添加了加密。我有 encrypt() 和 decrypt() 函数,它们采用 xml 文档和加密算法。我有一个使用 xml 阅读器解析文件的函数,但现在有了 xml 文档,我不确定如何创建 xmlreader。

问题是如何将我的 xml 文档保存到流中。我敢肯定这很简单,但我对流一无所知。

XmlDocument doc = new XmlDocument();
        doc.PreserveWhitespace = true;
        doc.Load(filep);
        Decrypt(doc, key);

        Stream tempStream = null;
        doc.Save(tempStream);   //  <--- the problem is here I think

        using (XmlReader reader = XmlReader.Create(tempStream))  
        {
            while (reader.Read())
            { parsing code....... } }

最佳答案

你可以试试 MemoryStream

XmlDocument xmlDoc = new XmlDocument( ); 
MemoryStream xmlStream = new MemoryStream( );
xmlDoc.Save( xmlStream );

xmlStream.Flush();//Adjust this if you want read your data 
xmlStream.Position = 0;

//Define here your reading

关于c# - 如何将 xmldocument 保存到流中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12676441/

相关文章:

c# - 设计选择 : Entity Framework vs Raw SQL

c# - 强制 XmlDocument 保存带有显式结束标记的空元素

c# XmlReader : reading attributes from start element 收藏

iphone - 我如何迭代并获取 NSDictionary 中的所有值?

c# - 从 UWP 应用安装信任 anchor 或证书

c# - 一种在 MVC 4 应用程序中正确处理 HttpAntiForgeryException 的方法

c# - 当数组似乎不可能时,我可以使用什么集合?数据是否需要不可变,我可以有一个位置吗?

xpath - XPath 是否对逻辑表达式进行短路评估?

php - XML 和 PHP 空白的诅咒

c# - XmlReader 类中的 `ReadString` 与 `ReadContentAsString` 有什么区别?