2

XMLTextWriter を使用して XML ドキュメントを動的に (VB.Net で) 作成しています。空のタグをこのように表示したい -<Tag></Tag> これではなく -<Tag />

そのため、WriteFullEndElement を使用して要素タグを終了しています。しかし、それはタグを次のように書き出しています-

<Tag>

</Tag>

つまり、タグの間に改行文字を入れます。この XML を読み取る Web サービスは、改行文字が原因で XML を拒否します。

改行を避け、開始タグと終了タグの両方を同じ行に配置するにはどうすればよいですか?

4

1 に答える 1

3

を使用しXmlWriterSettingsます。具体的には、NewLineHandlingNewLineCharsを使用します。

以下は、C# で XML ドキュメントを記述する簡単な例です。

        XmlWriterSettings writerSettings = new XmlWriterSettings();
        writerSettings.Indent = true;
        writerSettings.NewLineHandling = NewLineHandling.None;


        using (XmlWriter textWriter = XmlTextWriter.Create(this.fileName, writerSettings))
        {
            textWriter.WriteStartDocument();
            textWriter.WriteComment("generated file");
            textWriter.WriteStartElement("Root");
            // Populate data
            foreach (object o in someList)
            {
               textWriter.WriteStartElement(o);
               textWriter.WriteString(o);
               textWriter.WriteFullEndElement ();
            }

            textWriter.WriteFullEndElement ();
            textWriter.WriteEndDocument();
            textWriter.Close(); 
        }

乾杯

于 2011-06-06T08:48:34.340 に答える