2012-03-09 76 views
0

我正在將一些註冊表信息寫入XML文件。 有一個符號是作爲regkey中字符串的值生成的。 當我寫入XML時,我正在創建,當我嘗試讀取它時,出現錯誤。有沒有辦法解決這個問題,我該怎麼辦?如何在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); 
    } 
} 
+3

[?你找哪家錯誤](http://www.chiark.greenend.org.uk/~sgtatham/bugs.html) – 2012-03-09 08:44:01

+1

它是如何被寫入?正在使用什麼編碼?結果如何看待?我期望一個UTF-8或UTF-16文件/流來處理這種情況。 – 2012-03-09 08:44:20

+0

我已經添加了上面的代碼 – Nisha 2012-03-09 08:48:18

回答