1

次の方法で、メモリ ストリームを使用して XML ファイルを作成しています。

XmlWriterSettings settings = new XmlWriterSettings();
settings.Indent = true;

MemoryStream ms = new MemoryStream();
using (XmlWriter writer = XmlWriter.Create(ms, settings))
{
    // CREATE XML WITH STATEMENTS LIKE THIS
    writer.WriteStartElement("url", myUrl);
    writer.WriteEndElement();
}

MemoryStream実際に要素をに追加する前に、結果の長さがどうなるかを確認する方法はありMemoryStreamますか?

何かのようなもの -

var sizeTotal = ms + (writer.WriteStartElement("url", myUrl);

これの目的は、 をチェックできるようにすることです。sizeTotalに書き込む前に、サイズが大きすぎないことを確認してくださいMemoryStream

生成する XML ファイルのサイズ制限は 10MB です。最初に「一時」ストリームに書き込み、長さを確認し、sizeTotal10MB 未満の場合は要素を「実際の」ストリームに書き込みますか。それ以外の場合、sizeTotal10MB を超える場合は、要素をストリームに追加せ、XML ファイルを生成してから、新しいファイルを開始します。

4

2 に答える 2