Silverlight アプリにメモリストリームがあります。このメモリストリームをファイルストリーム オブジェクトにコピーする必要があります。私が電話した場合:
memoryStream.Position = 0;
memoryStream.Seek(0,SeekOrigin.Begin);
動作しません。アプリケーションをデバッグし、メモリストリームのプロパティを確認しましたが、位置はまだファイルの末尾を指しています。手がかりはありますか?
Silverlight アプリにメモリストリームがあります。このメモリストリームをファイルストリーム オブジェクトにコピーする必要があります。私が電話した場合:
memoryStream.Position = 0;
memoryStream.Seek(0,SeekOrigin.Begin);
動作しません。アプリケーションをデバッグし、メモリストリームのプロパティを確認しましたが、位置はまだファイルの末尾を指しています。手がかりはありますか?
別のプロパティがデバッガーでトリガーされ、ストリームを読み取っている可能性はありますか?
デバッガーを使用するのではなく、ログに記録 (またはメッセージ ボックスに表示) するとどうなりますか。
Log("Position = " + stream.Position);
stream.Position = 0;
Log("Position = " + stream.Position);
同じゼロ以外の数値が 2 回表示されますか? MemoryStream
それが壊れているとは信じがたいです。
ところで、手動ですべてMemoryStream
をコピーするよりもコピーを使用する簡単な方法は、を引数として呼び出すことです。WriteTo
FileStream