C# 打开文件对话框控件OpenFileDialog
|
admin
2024年1月24日 23:5
本文热度 501
|
摘要
OpenFileDialog 是一个预先配置的 Windows 窗体组件,它可以让用户选择要打开的文件。与 Windows 操作系统公开的“打开文件”对话框相同,它使用 CommonDialog 类进行实现。OpenFileDialog 的用途非常广泛,它可以在 Windows 应用程序中被用于选择文本文件、图片文件、音频文件、视频文件等多种类型的文件。
在使用 OpenFileDialog 组件时,开发者需要考虑以下几个方面:
文件类型过滤器的设置:用户可以通过对话框中的过滤器列表选择要打开的文件类型。开发者需要设置合适的过滤器列表,以便用户能够方便地选择所需的文件类型。
默认文件名的设置:用户选择的文件名需要能够反映所选文件的实际内容。开发者可以设置默认文件名,也可以允许用户自定义文件名。
对话框的显示位置和样式:开发者可以通过设置 InitialDirectory
、Filter
、FilterIndex
等属性来控制对话框的外观和行为。此外,开发者还可以设置对话框的显示位置,以便在用户选择文件时提供更好的用户体验。
OpenFileDialog 组件是一个非常有用的工具,可以帮助开发者轻松地实现文件选择功能。在开发过程中,开发者需要认真考虑对话框的设计和实现,以确保用户能够方便地选择所需的文件类型。
正文
InitialDirectory:设置对话框的初始目录。
Filter:要在对话框中显示的文件筛选器,例如,"文本文件(.txt)|.txt|所有文件(.)||."。
FilterIndex:在对话框中选择的文件筛选器的索引,如果选第一项就设为1。
RestoreDirectory:控制对话框在关闭之前是否恢复当前目录。
FileName:第一个在对话框中显示的文件或最后一个选取的文件。
Title:将显示在对话框标题栏中的名称。
Multiselect:设置打开对话框可以多选。
界面设计
点击打开文件,能过对话框选取相应文件
读取相应文件信息
private void btnOpen_Click(object sender, EventArgs e)
{
//定义一个文件打开控件
OpenFileDialog ofd = new OpenFileDialog();
//设置打开对话框的初始目录,默认目录为exe运行文件所在的路径
ofd.InitialDirectory = Application.StartupPath;
//设置打开对话框的标题
ofd.Title = "请选择要打开的文件";
//设置打开对话框可以多选
ofd.Multiselect = true;
//设置对话框打开的文件类型
ofd.Filter = "文本文件|*.txt|音频文件|*.wav|图片文件|*.jpg|所有文件|*.*";
//设置文件对话框当前选定的筛选器的索引
ofd.FilterIndex = 2;
//设置对话框是否记忆之前打开的目录
ofd.RestoreDirectory = true;
if (ofd.ShowDialog() == DialogResult.OK)
{
//获取用户选择的文件完整路径
string filePath = ofd.FileName;
//获取对话框中所选文件的文件名和扩展名,文件名不包括路径
string fileName = ofd.SafeFileName;
txtLog.AppendText("用户选择的文件目录为:" + filePath+System.Environment.NewLine);
txtLog.AppendText("用户选择的文件名称为:" + fileName + System.Environment.NewLine);
txtLog.AppendText("**************选中文件的内容**************");
using (FileStream fsRead = new FileStream(filePath, FileMode.OpenOrCreate, FileAccess.Read))
{
//定义二进制数组
byte[] buffer = new byte[1024 * 1024 * 5];
//从流中读取字节
int r = fsRead.Read(buffer, 0, buffer.Length);
txtLog.AppendText(Encoding.Default.GetString(buffer, 0, r) + System.Environment.NewLine);
}
}
}
该文章在 2024/1/24 23:05:19 编辑过