私は次のコードStreamWriterを使用して文字列にテキストを書き込んで、何も書き込まれないのはなぜですか?
public void SerializeToStream(Stream stream)
{
var xml = // Linq to xml code here
// Write to the stream
var writer = new StreamWriter(stream);
writer.Write(xml.ToString());
}
マイxml
オブジェクトは、正しいデータを持っている、と私はxml.ToString()
がすべてを正しく示していることを確認しましたが、writer.Write(xml.ToString())
後、私の着信ストリームと呼ばれている(それはFileStream
またはMemoryStream
だかどうかに関係なく、まだ持っているを持っていますその中には何も(ゼロの長さ)。例外がスローされません。ですが、なぜでしょう?
注意点としてXmlWriter
クラスは、私がすることはできません余分なもの(<xml>
宣言タグ)を追加しますので、私はxml.WriteTo()
を使用することはできません私のXML(会社ポリ私は制御権を持っていない別のシステムとの統合のためのcy)。
あなたは紅潮しています、または自動フラッシュがtrueに設定されていますか? – Luis
これはおそらく、彼がアプリケーションを実行したり起動したディレクトリへの書き込みをデフォルト設定しているはずです。 – MethodMan
@MystereMan:メソッドシグネチャは、すべてのStreamWriterが必要とするストリームを提供します... –