C#winfrom技术打开文件操作总结(OpenFileDialog类)
在C#的winfrom中打开文件可以使用OpenFileDialog类进行操作。下面详细讲解这个类的常见属性和使用方法。
介绍:
OpenFileDialog类使用的命名空间是:System.Windows.Forms; 它不可以在控制台工程中使用,它与 Windows 操作系统的“打开文件”对话框相同,是从 CommonDialog 类继承的。在基于 Windows 的应用程序中,可实现简单的文件选择,而不必配置自己的对话框。利用标准的 Windows 对话框,可以创建常见程序的对话框。
常用属性:
1 、 Title 属性:获取或设置文件对话框标题。默认值为空字符串("")。如果标题为空字符串,系统将使用默认标题“打开”。示例:
fileDialog.Title = "请打开文件"; // 这里显示的是打开文件窗口的标题
2 、 Multiselect 属性:获取或设置一个值,该值指示对话框是否允许选择多个文件。(会用到FileNames属性)示例:
fileDialog.Multiselect = true; // 表示可以选择多个文件,false为不可选多个文件
3、Filter 属性:用来筛选相应的文件,该字符串决定对话框的“文件类型”框中出现的选择内容。示例:
fileDialog.Filter = "所有文件(*.*)|*.*"; // 这里选取所有文件
4、FileName 属性:获取或设置一个包含在文件对话框中选定的文件名的字符串。也就是在对话框中选择的文件名,默认值为空字符串("")。这个属性包含的是文件的绝对路径。如果未选定文件,将返回空字符串。示例:
string file = fileDialog.FileName; // 返回文件的绝对路径
5、FileNames 属性:获取对话框中所有选定文件的文件名。属性值是一个 String 类型数组。每个文件名都既包含文件路径又包含文件扩展名。如果未选定文件,该方法将返回空数组。使用这个属性时需要打开2中所示的可以选择多个文件。示例:
string[] filename = fileDialog.FileNames; // 返回所有文件路径的路径
for (int i = 0; i < filename.Length; i++)
{
Console.WriteLine(filename[i]); // 输出所有的文件路径
}
常用方法
1、ShowDialog() 方法:在运行时显示对话框,通常与DialogResult.OK一起使用,表示对话框打开成功。示例:
if (fileDialog.ShowDialog() == DialogResult.OK) //打开文件路径
下面演示完整的打开Windows文件选择对话框,并且打开文件的代码。
public void showfile()
{
OpenFileDialog fileDialog = new OpenFileDialog(); // 显示一个打开文件窗体对象
fileDialog.Multiselect = true; // 可以多选文件
fileDialog.Title = "请打开文件"; // 这里显示的是打开文件窗口的标题
fileDialog.Filter = "所有文件(*.*)|*.*";
if (fileDialog.ShowDialog() == DialogResult.OK)
{
string file = fileDialog.FileName; // 返回单个文件的绝对路径,如果有多个只是显示第一个
string[] filename = fileDialog.FileNames; // 返回所有文件路径的路径
for (int i = 0; i < filename.Length; i++)
{
Console.WriteLine(filename[i]); // 输出所有的文件路径
}
MessageBox.Show("已选择文件:" + file, "选择文件提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}