从saveFileDialog中获取不包含文件名的路径?

4

我正在尝试从SaveFileDialog中获取我的路径,但不包括文件名,以便创建一个DirectoryInfo对象。

private void btnBrowseCapture_Click(object sender, EventArgs e)
{
    SaveFileDialog saveFileDialogBrowse2 = new SaveFileDialog();
    saveFileDialogBrowse2.Filter = "Pcap file|*.pcap";
    saveFileDialogBrowse2.Title = "Save an pcap File";
    saveFileDialogBrowse2.ShowDialog();

    if (saveFileDialogBrowse2.FileName != "")
    {
        string str = saveFileDialogBrowse2.FileName;

    }
}

1
你应该将 SaveFileDialog 包装在一个 using 语句中,并测试 saveFileDialogBrowse2.ShowDialog() == DialogResult.OK 而不是空文件名。 - Nasreddine
4个回答

9

2

使用 System.IO.FileInfo.DirectoryName 属性可以获取文件所在目录的完整路径。


string fileName = @"C:\TMP\log.txt";
FileInfo fileInfo = new FileInfo(fileName);

Console.WriteLine(fileInfo.DirectoryName); // Output: "C:\TMP"

使用您的示例:
string str = saveFileDialogBrowse2.FileName;

FileInfo fileInfo = new FileInfo(str);
Console.WriteLine(fileInfo.DirectoryName);

2
string fileName = @"C:\TMP\log.txt";
FileInfo fileInfo = new FileInfo(fileName);

Console.WriteLine(fileInfo.DirectoryName);

1

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接