は、.NET 3.5を使用している場合:
XDocument document = XDocument.Load(filename);
document.Save(filename);
これは自動的にインデントされます。あなたの質問が尋ねられたように、ノードのには、しかインデントしていないので、まったく問題はありません。それはやっかくなるだろう。
あなたは.NET 2.0で立ち往生している場合は、ここではクレイグの方法はrejiggedと文字列の代わりにファイルを使用するように変更です:XmlWriterSettings
はC#3で
public static void FormatXmlString(string inputFile, string outputFile)
{
XmlDocument document = new XmlDocument();
document.Load(inputFile);
XmlWriterSettings settings = new XmlWriterSettings();
settings.Indent = true;
using (XmlWriter writer = XmlWriter.Create(outputFile, settings))
{
document.WriteTo(writer);
}
}
ちょうどかもしれない:
new XmlWriterSettings { Indent = true }
XmlWriter.Create
への呼び出しに埋め込むことができ
ていますが、.NET 2.0を使用している場合、あなたはおそらくを使用することはできませんC#3.
EDIT:入力ファイル名部分が問題になる場合は、使用することができます:
XmlDocument document = new XmlDocument();
using (Stream stream = File.OpenRead(inputFile))
{
document.Load(stream);
}
これは私が何をすべきかです! –
それは私が求めていたものではありませんでした。私はそれを実装することを求めました。 – Micha