7

.NET 4.0でC#を使用していますが、アプリケーションでまれな問題をデバッグしようとしています。この場合、プログラムが構成設定の読み取りと書き込みを行う.xmlファイルを取得し、空のXMLファイルを書き込むことがあります。

XmlDocument.Save()問題は、徹底的に再現しようとしても再現できないことです。そのため、組み込み機能によってファイルが空白になるという既知の状況がないことを確認できるのではないかと思いました。

XMLファイルを変更する唯一の方法は、組み込みを使用するメモリ内XmlNode.AppendChild()XmlNode.ReplaceChild()あるため、問題はこれらの関数の1つで発生するか、関数を使用してディスクに書き込むときに発生すると予想されXmlDocument.Save()ます。

4

3 に答える 3

4

このスレッドを見つけました。特に最後から 2 番目の Answer は試してみる価値があるかもしれません。見積もり:

うまくいくように見える回避策は、次のものを置き換えることでした:

doc.Save("c:\temp\Output.xml")

IO.File.WriteAllText("c:\temp\Output.xml", doc.OuterXml);
于 2013-01-13T13:10:31.273 に答える
1

私は正しく理解しました。空白のxmlファイルをロードし、構成設定を追加して、それを保存してください。

その場合、そのxmlファイルの書き込み権限を確認したい場合があります。権限がない場合、ファイルに何も書き込まれないことがあります。

お役に立てば幸いです。

于 2013-01-10T20:21:29.280 に答える