如何通过单个 WinForm 对话框获取文件夹或文件路径
本文关键字:文件夹 文件 路径 获取 对话框 何通过 单个 WinForm | 更新日期: 2023-09-27 18:32:49
更新:看来我不清楚我的问题是什么。约翰·阿伦(John Arlen(对我标题的编辑似乎也引起了更多的误解。标题更改为"如何获取文件夹或文件路径?"这不是我想要的。我知道有一个对话框适用于文件,另一个对话框适用于文件夹。我知道这些对话框中的每一个都可以返回文件夹或文件的路径。我说我不知道如何获取文件路径,但即使我知道该怎么做,它也没有帮助我。
正如我最初的问题中所述:
"我让用户通过一些对话框选择一个文件夹或文件。我不知道路径是属于文件夹还是文件。一旦用户点击'打开'按钮,我希望当前选择的目录或文件路径存储在字符串中。
我的意思是我想使用一些可能存在也可能不存在的对话框。我不知道用户是在追求文件还是文件夹。用户知道这一点,但用户不知道路径。这就是使用对话框的原因。用户将搜索所需的文件或文件夹,然后单击"打开"。对于我的需求,将单个对话框用于此目的更有意义。我想看看是否存在这样的对话框,因为我对.NET Framework的经验有限。
Jared Kells的回答几乎正是我想要的。阅读他提供的内容后,似乎不存在这样的对话。我将不得不提供我自己的实现。
由于提出我自己的实现可能既耗时又困难,所以我暂时不做。我会等几天来选择一个答案,以防有人提供非常有用的答案。
感谢那些做出贡献的人,即使这不是我所追求的。
原创内容:
我正在寻找一种获取文件夹或文件的文件路径的方法。我玩过OpenFileDialog
和FolderBrowserDialog
,但没有多大成功。我能够使用FolderBrowserDialog.SelectedPath获取文件夹路径。使用 OpenFileDialog
类,我无法弄清楚如何获取文件路径。
即使我能弄清楚,我仍然处于困境中。我让用户通过某个对话框选择一个文件夹或文件。我不知道路径是属于文件夹还是文件。用户点击"打开"按钮后,我希望将当前选定的目录或文件路径存储在字符串中。似乎我使用的每个类都卡在文件或文件夹中。
这可以通过WinForms对话框实现吗?我宁愿此时不必编写自己的对话框。
openFileDialog1.ShowDialog();
string filePath = openFileDialog1.FileName;
将为您提供文件的路径。
folderBrowserDialog1.ShowDialog();
string folderPath = folderBrowserDialog1.SelectedPath;
对于文件夹。
string path = ...
if(File.Exists(path))...//is file
if(Directory.Exists(path))...//is folder
检查它是什么。