C# 如何读写¬;在Xml中

C# 如何读写¬;在Xml中,c#,xml,visual-studio,registrykey,C#,Xml,Visual Studio,Registrykey,我正在将一些注册表信息写入XML文件。 在regkey中,有一个符号被生成为字符串的值。 当我写入XML时,我得到了;当我试着读回它时,我得到了一个错误。有没有办法克服这个问题,我该如何继续 读取时出错为: > System.InvalidOperationException was unhandled > Message="There is an error in XML document (235, 28)." 从文件中读取: public diagnostic

我正在将一些注册表信息写入XML文件。 在regkey中,有一个符号被生成为字符串的值。 当我写入XML时,我得到了;当我试着读回它时,我得到了一个错误。有没有办法克服这个问题,我该如何继续

读取时出错为:

> System.InvalidOperationException was unhandled    
> Message="There is an error in XML document (235, 28)."
从文件中读取:

public diagnostics readregkey(diagnostics diagnostics, string filename)
{
    diagnostics dia = null;
    using (System.IO.StreamReader sr = 
        new System.IO.StreamReader(filename, Encoding.Unicode))
    {
        System.Xml.Serialization.XmlSerializer x = 
            new System.Xml.Serialization.XmlSerializer(typeof(diagnostics));
        dia = x.Deserialize(sr) as diagnostics;
    }
    return dia;
}
写入文件:

public static void  WriteRegKey(diagnostics diagnostics, string filename)
{
    diagnostic.regKeys.Add(key(Registry.LocalMachine, sKeyGravitas));
    diagnostic.regKeys.Add(key(Registry.CurrentUser, sKeyGravitas));
    using (System.IO.StreamWriter sw = 
        new System.IO.StreamWriter(filename,false, Encoding.Unicode))
    {
        System.Xml.Serialization.XmlSerializer x = 
            new System.Xml.Serialization.XmlSerializer(typeof(diagnostics));
        x.Serialize(sw, diagnostics);
    }
}

您可以使用WriteRaw方法,该方法允许您手动写出原始标记。此方法防止特殊字符被转义


您可以在此处找到文档:

您可以使用WriteRaw方法,该方法允许您手动写出原始标记。此方法防止特殊字符被转义


您可以在这里找到文档:

它是如何编写的?正在使用什么编码?如何看待结果?我希望一个UTF-8或UTF-16文件/流能够处理这种情况。我发现¨是否定符号。每天学习新的东西它是怎么写的?正在使用什么编码?如何看待结果?我希望一个UTF-8或UTF-16文件/流能够处理这种情况。我发现¨是否定符号。每天学习新的东西如何使用windows生成的c读取xml中的二进制数据如何使用windows生成的c读取xml中的二进制数据