c#winform 利用OpenFileDialog打开文件控件找到一个文件然后保存到指定文件夹

2024-12-21 14:28:02
推荐回答(3个)
回答1:

OpenFileDialog 一般为文件打开所用,用 OpenFileDialog 保存文件不怎么好吧

SaveFileDialog 一般为文件保存所用

回答2:

f1.ShowDialog();
if (f1.ShowDialog() == DialogResult.OK)

这两句话你可以试想一下,应该会打开两次文件选择框的,所以第一句你可以删除了,第二句在打开的时候判断一下就可以了。

然后再纠正一下,f1.FileName拿到的就是全路径,如果你用Path.GetDirectoryName,这样拿到的是文件的目录名称。

其次再纠正一下File.Copy()的两个参数要的是全路径,你缺给了两个目录,我猜想你是会报错的。

回答3:

openfiledialog的使用
1、 OpenFileDialog控件有以下基本属性
InitialDirectory 对话框的初始目录
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);