48

オブジェクトが与えられたSystem.IO.FileStream場合、アクセスを提供しているファイルへの元のパスを取得するにはどうすればよいですか?

たとえば、次の関数では、 :MyStreamHandler()を作成したファイルのパスを取得したいと思います。FileStream

public static void Main() 
{
    string path = @"c:\temp\MyTest.txt";
    FileStream fs = File.Create(path));

    MyStreamHandler(fs);
    MyOtherStreamHandler(fs);

    fs.Close();
    fs.Dispose();
}

private static void MyStreamHandler(FileStream fs)
{
    // Get the originating path of 'fs'
} 

private static void MyOtherStreamHandler(FileStream fs)
{
}
4

3 に答える 3

85

FileStreamのNameプロパティ。

MSDNのドキュメントを参照してください

于 2009-07-22T14:27:39.480 に答える
7

fs.Nameを使用してパスを取得できます。

于 2009-07-22T14:28:53.410 に答える
1

パスを取得するには、FileInfo-Classを使用します。

var fileStream = File.OpenRead(fileName);
var fileInfo = new FileInfo(fileName);

Settings.Default.ThePath = fileInfo.DirectoryName;
Settings.Default.Save();
于 2020-07-07T10:42:18.557 に答える