0

ストリーム内の元のファイルのパスを取得する必要があります。

FileStreamの「 Name」プロパティを使用してパスを取得する必要があることを読みました。 ここまでは順調ですね。

問題は、 FileStreamではなく通常のSystem.IO.Streamを持っているため、「Name」プロパティがないことです。

Stream.CopyToメソッドがあることを読みました。http://msdn.microsoft.com/en-us/library/dd782932.aspx

Streamを次のよう にFileStreamに変換することを計画しました。

System.IO.FileStream fileStream = new System.IO.FileStream(?????);
using (stream)
{
    stream.CopyTo(fileStream);
}  

ただし、FileStream にはパラメーターなしのコンストラクターがありません。

どうすれば解決できますか?

4

2 に答える 2

2

Stream が FileStream のインスタンスであると仮定すると、Stream を FileStream にキャストできます。

var fileStream = stream as FileStream;

Stream インスタンスからパス名を取得できる唯一の方法は、パスにアクセスする方法を提供するクラスにキャストできる場合です。

于 2013-08-15T08:51:14.910 に答える
1

ストリームのパスを取得する

System.IO.FileStream Stream = ....;
FileStream fs = stream as FileStream;
if (fs != null)
{
    // now you can check its path
}
else
{
    // you cant check its path
}
于 2013-08-15T08:50:13.347 に答える