OpenFileDialog类
一、打开文件对话框(OpenFileDialog)
一、打开文件对话框(OpenFileDialog)
1、 OpenFileDialog控件有以下基本属性
InitialDirectory 对话框的初始目录
Filter 要在对话框中显示的文件筛选器,例如,"文本文件(*.txt)|*.txt|所有文件(*.*)||*.*"
FilterIndex 在对话框中选择的文件筛选器的索引,如果选第一项就设为1
RestoreDirectory 控制对话框在关闭之前是否恢复当前目录
FileName 第一个在对话框中显示的文件或最后一个选取的文件
Title 将显示在对话框标题栏中的字符
AddExtension 是否自动添加默认扩展名
CheckPathExists
在对话框返回之前,检查指定路径是否存在
DefaultExt 默认扩展名
DereferenceLinks 在从对话框返回前是否取消引用快捷方式
ShowHelp
启用"帮助"按钮
ValiDateNames 控制对话框检查文件名中是否不含有无效的字符或序列
Filter 要在对话框中显示的文件筛选器,例如,"文本文件(*.txt)|*.txt|所有文件(*.*)||*.*"
FilterIndex 在对话框中选择的文件筛选器的索引,如果选第一项就设为1
RestoreDirectory 控制对话框在关闭之前是否恢复当前目录
FileName 第一个在对话框中显示的文件或最后一个选取的文件
Title 将显示在对话框标题栏中的字符
AddExtension 是否自动添加默认扩展名
CheckPathExists
在对话框返回之前,检查指定路径是否存在
DefaultExt 默认扩展名
DereferenceLinks 在从对话框返回前是否取消引用快捷方式
ShowHelp
启用"帮助"按钮
ValiDateNames 控制对话框检查文件名中是否不含有无效的字符或序列
2、 OpenFileDialog控件有以下常用事件
FileOk 当用户点击"打开"或"保存"按钮时要处理的事件
HelpRequest 当用户点击"帮助"按钮时要处理的事件
可以用以下代码来实现上面这个对话框:
private void openFileDialogBTN_Click(object sender, System.EventArgs e){
OpenFileDialog openFileDialog=new OpenFileDialog();
openFileDialog.InitialDirectory="c:\\";//注意这里写路径时要用c:\\而不是c:\
openFileDialog.Filter="文本文件|*.*|C#文件|*.cs|所有文件|*.*";
openFileDialog.RestoreDirectory=true;
openFileDialog.FilterIndex=1;
if (openFileDialog.ShowDialog()==DialogResult.OK)
{
fName=openFileDialog.FileName;
File fileOpen=new File(fName);
isFileHaveName=true;
richTextBox1.Text=fileOpen.ReadFile();
richTextBox1.AppendText("");
}
}
/*路径的返回用filename是字符串类型
如:openFileDialog1.ShowDialog();
_name1= openFileDialog1.FileName;
Image imge = Image.FromFile(_name1);*/
/********/
OpenFileDialog ofd = new OpenFileDialog();
ofd.Title = "请选择音乐文件";
ofd.InitialDirectory = @"C:\Users\SpringRain\Desktop\Music";
ofd.Multiselect = true;
ofd.Filter = "音乐文件|*.wav|所有文件|*.*";
ofd.ShowDialog();
SaveFileDialog//SaveFileDialog类(保存文件对话框)
c#获取要保存文件的对话框,用SaveFileDialog类。具体用法很简单分享一下吧,对于初学者可能有用
//可能要获取的路径名
string localFilePath = "", fileNameExt= "", newFileName= "", FilePath = "";
SaveFileDialog saveFileDialog = new SaveFileDialog();
//设置文件类型
//书写规则例如:txt files(*.txt)|*.txt
saveFileDialog.Filter = "txt files(*.txt)|*.txt|xls files(*.xls)|*.xls|All files(*.*)|*.*";
//设置默认文件名(可以不设置)
saveFileDialog.FileName = "siling-Data";
//主设置默认文件extension(可以不设置)
saveFileDialog.DefaultExt = "xml";
//获取或设置一个值,该值指示如果用户省略扩展名,文件对话框是否自动在文件名中添加扩展名。(可以不设置)
saveFileDialog.AddExtension = true;
//设置默认文件类型显示顺序(可以不设置)
saveFileDialog.FilterIndex = 2;
//保存对话框是否记忆上次打开的目录
saveFileDialog.RestoreDirectory = true;
// Show save file dialog box
DialogResult result = saveFileDialog.ShowDialog();
//点了保存按钮进入
if (result == DialogResult.OK)
{
//获得文件路径
localFilePath = saveFileDialog.FileName.ToString();
//获取文件名,不带路径
//fileNameExt = localFilePath.Substring(localFilePath.LastIndexOf("\\") + 1);
//获取文件路径,不带文件名
//FilePath = localFilePath.Substring(0, localFilePath.LastIndexOf("\\"));
//给文件名前加上时间
//newFileName = DateTime.Now.ToString("yyyyMMdd") + fileNameExt;
//在文件名里加字符
//saveFileDialog.FileName.Insert(1,"dameng");
//为用户使用 SaveFileDialog 选定的文件名创建读/写文件流。
//System.IO.FileStream fs = (System.IO.FileStream)saveFileDialog.OpenFile();//输出文件
//fs可以用于其他要写入的操作
}
//FolderBrowserDialog类(浏览器文件夹对话框)
//将一个文件夹里面的东西复制到另一个文件夹里面去
private void button1_Click(object sender, EventArgs e)
{
string sDir, dDir;
FolderBrowserDialog sourceFolder = new FolderBrowserDialog();
sourceFolder.Description = "请选择要复制的文件夹";
if (sourceFolder.ShowDialog() == DialogResult.OK)
{
sDir = sourceFolder.SelectedPath;//将要复制的文件夹的路径
sourceFolder.Description = "请选择要复制到的文件夹";
if (sourceFolder.ShowDialog() == DialogResult.OK)
{
dDir = sourceFolder.SelectedPath;//要复制到的文件路径
string[] files = Directory.GetFiles(sDir);
foreach (var file in files)
{
string dFileName = file.Substring(file.LastIndexOf("\\") + 1);
File.Copy(file, dDir + "\\" + dFileName, true);
}
}
}
}
FolderBrowserDialog
//FolderBrowserDialog实现默认选中上次选择的目录
public partial class Form1 : Form
{
string defaultfilePath = "";
private void button1_Click(object sender, EventArgs e)
{
FolderBrowserDialog dialog = new FolderBrowserDialog();
//首次defaultfilePath为空,按FolderBrowserDialog默认设置(即桌面)选择
if (defaultfilePath != "")
{
//设置此次默认目录为上一次选中目录
dialog.SelectedPath = defaultfilePath;
}
if (dialog.ShowDialog() == DialogResult.OK)
{
//记录选中的目录
defaultfilePath = dialog.SelectedPath;
}
}
}
线程调用SaveFileDialog失效