C# SaveFileDialog 、OpenFileDialog 的用法

article/2025/11/1 6:04:09

文件操作中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可以用于其他要写入的操作
}


————————————————
版权声明:本文为CSDN博主「Denghejing」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/Denghejing/article/details/46423065

saveFileDialog saveFileDialog1=new saveFileDialog();

saveFileDialog1.InitialDirectory = Path.GetDirectoryName(strPartPath);

  //设置文件类型

saveFileDialog1.Filter = "Excel 工作簿(*.xlsx)|*.xlsx|Excel 启动宏的工作簿(*.xlsm)|*.xlsm|Excel 97-2003工作簿(*.xls)|*.xls";

//saveFileDialog1.FilterIndex = 1;//设置文件类型显示

saveFileDialog1.FileName = "自己取个";//设置默认文件名

saveFileDialog1.RestoreDirectory = true;//保存对话框是否记忆上次打开的目录

saveFileDialog1.CheckPathExists = true;//检查目录

 if (saveFileDialog1.ShowDialog() == DialogResult.OK)

{

 string strSaveFileLocation = saveFileDialog1.FileName;//文件路径

 }       

其它:
SaveFileDialog saveFileDialog = new SaveFileDialog();
//打开的文件选择对话框上的标题
saveFileDialog.Title = "请选择文件";
//设置文件类型
saveFileDialog.Filter = "文本文件(*.txt)|*.txt|所有文件(*.*)|*.*";
//设置默认文件类型显示顺序
saveFileDialog.FilterIndex = 1;
//保存对话框是否记忆上次打开的目录
saveFileDialog.RestoreDirectory = true;
//设置是否允许多选
saveFileDialog.Multiselect = false;
//按下确定选择的按钮
if (saveFileDialog.ShowDialog() == DialogResult.OK)
{
    //获得文件路径
    string localFilePath = saveFileDialog.FileName.ToString();
    //获取文件路径,不带文件名
    //FilePath = localFilePath.Substring(0, localFilePath.LastIndexOf("\\"));
    //获取文件名,带后缀名,不带路径
    string fileNameWithSuffix = localFilePath.Substring(localFilePath.LastIndexOf("\\") + 1);
    //去除文件后缀名
    string fileNameWithoutSuffix = fileNameWithSuffix.Substring(0, fileNameWithSuffix.LastIndexOf("."));
    //在文件名前加上时间
    string fileNameWithTime = DateTime.Now.ToString("yyyy-MM-dd ") + fileNameExt;
    //在文件名里加字符
    string newFileName = localFilePath.Insert(1, "Tets");
}
 

https://blog.csdn.net/u011108093/article/details/81627935

1.OpenFileDialog

 
  1. private void btnOpen_Click(object sender, EventArgs e)

  2. {

  3. OpenFileDialog ofd = new OpenFileDialog();

  4. ofd.InitialDirectory = @"C:\Users\LWP1398\Desktop"; //设置初始路径

  5. ofd.Filter = "Excel文件(*.xls)|*.xls|Csv文件(*.csv)|*.csv|所有文件(*.*)|*.*"; //设置“另存为文件类型”或“文件类型”框中出现的选择内容

  6. ofd.FilterIndex = 2; //设置默认显示文件类型为Csv文件(*.csv)|*.csv

  7. ofd.Title = "打开文件"; //获取或设置文件对话框标题

  8. ofd.RestoreDirectory = true;

  9. if (ofd.ShowDialog() == DialogResult.OK)

  10. {

  11. //FileName:所选文件的全路径 SafeFileName:所选的文件名

  12. txtPath.Text = "FileName:" + ofd.FileName + "\r\n" + "SafeFileName:" + ofd.SafeFileName;

  13. }

  14. }

2.OpenFileDialog选择多个文件

 
  1. private void button3_Click(object sender, EventArgs e)

  2. {

  3. OpenFileDialog ofd = new OpenFileDialog();

  4. ofd.InitialDirectory = @"C:\Users\LWP1398\Desktop"; //设置初始路径

  5. ofd.Filter = "Excel文件(*.xls)|*.xls|Csv文件(*.csv)|*.csv|所有文件(*.*)|*.*"; //设置“另存为文件类型”或“文件类型”框中出现的选择内容

  6. ofd.FilterIndex = 2; //设置默认显示文件类型为Csv文件(*.csv)|*.csv

  7. ofd.Title = "打开文件"; //获取或设置文件对话框标题

  8. ofd.RestoreDirectory = true;设置对话框是否记忆上次打开的目录

  9.  
  10. ofd.Multiselect = true;//设置多选

  11. if (ofd.ShowDialog() == DialogResult.OK)

  12. {

  13. for (int i = 0; i < ofd.FileNames.Length; i++)

  14. {

  15. txtPath.Text += ofd.FileNames[i] + "\r\n";//输出一个路径回车换行

  16. }

  17. for (int i = 0; i < ofd.FileNames.Length; i++)

  18. {

  19. txtPath.Text += ofd.SafeFileNames[i] + "\r\n";

  20. }

  21. }

  22. }

3.SaveFileDialog

 
  1. private void button2_Click(object sender, EventArgs e)

  2. {

  3. SaveFileDialog sfd=new SaveFileDialog();

  4. sfd.Filter = "文本文件(*.txt)|*.txt|所有文件|*.*";//设置文件类型

  5. sfd.FileName = "保存";//设置默认文件名

  6. sfd.DefaultExt = "txt";//设置默认格式(可以不设)

  7. sfd.AddExtension = true;//设置自动在文件名中添加扩展名

  8. if (sfd.ShowDialog()==DialogResult.OK)

  9. {

  10. txtPath.Text = "FileName:" + sfd.FileName + "\r\n" ;

  11. using (StreamWriter sw = new StreamWriter(sfd.FileName))

  12. {

  13. sw.WriteLineAsync("今天是个好天气");

  14. }

  15. }

  16. MessageBox.Show("ok");

  17. }

 
  1. private void saveFileDialog1_FileOk(object sender, CancelEventArgs e)

  2. {

  3. saveFileDialog1.AddExtension = true; //自动添加扩展名

  4. e.Cancel = true; //取消保存操作

  5. string 扩展名 = System.IO.Path.GetExtension(saveFileDialog1.FileName);

  6. //判断扩展名并实现自定义的保存操作(导出)

  7. if (扩展名 == "txt")

  8. { }

  9. if (扩展名 == "xml")

  10. { }

  11. }

4.FolderBrowserDialog

 
  1. string defaultPath = "";

  2. FolderBrowserDialog dialog = new FolderBrowserDialog();

  3. //打开的文件夹浏览对话框上的描述

  4. dialog.Description = "请选择一个文件夹";

  5. //是否显示对话框左下角 新建文件夹 按钮,默认为 true

  6. dialog.ShowNewFolderButton = false;

  7. //首次defaultPath为空,按FolderBrowserDialog默认设置(即桌面)选择

  8. if (defaultPath != "")

  9. {

  10. //设置此次默认目录为上一次选中目录

  11. dialog.SelectedPath = defaultPath;

  12. }

  13. //按下确定选择的按钮

  14. if (dialog.ShowDialog() == DialogResult.OK)

  15. {

  16. //记录选中的目录

  17. defaultPath = dialog.SelectedPath;

  18. }

  19. MessageBox.show(defaultPath);

C#中利用OpenFileDialog与 SaveFileDialog保存文件与创建文件 以及FolderBrowserDialog用法

1.利用 SaveFileDialog保存并创建文件:根据用户指定的路径选择并保存文件,单个文件

     using System.IO;
     private string saveFile()
        {
            SaveFileDialog saveDlg = new SaveFileDialog();
            saveDlg.Filter = "文本(*.txt)|*.txt;|Excle(*.xls)|*.xls";
            if (saveDlg.ShowDialog() == DialogResult.OK)
            {
                FileStream fs1 = new FileStream(saveDlg.FileName, FileMode.Create, FileAccess.Write);
                fs1.Close();
            }
            return saveDlg.FileName;
        }
2.利用 OpenFileDialog打开用户指定的路径并删除文件:用来读取单个文件

private string clearFile()
        {
            OpenFileDialog openFileDialog1 = new OpenFileDialog();
 
            openFileDialog1.Filter = "文本(*.txt)|*.txt;|Excle(*.xls)|*.xls";
            openFileDialog1.Title = "请选择要清空的文件";
            if (openFileDialog1.ShowDialog() == DialogResult.OK)
            {
 
                CreateFilePath = openFileDialog1.FileName;
                
            }
            if (File.Exists(CreateFilePath))
            {
                using (StreamWriter sw = new StreamWriter(CreateFilePath, false))//fasle ,若存在则覆盖
                {
                    sw.WriteLine("");
                    sw.Close();
                }
            }
        }
3.    FolderBrowserDialog:用来选择一个文件夹,从而读取这个文件夹下面的所有文件
  private void btnBrowse_Click(object sender, EventArgs e)
        {
 
            if (folderBrowserDialog1.ShowDialog() == DialogResult.OK)
            {
                txtFile.Text = folderBrowserDialog1.SelectedPath;   
            }
        }


————————————————
版权声明:本文为CSDN博主「已被格式化的叔叔」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/sl1990129/article/details/79037518


http://chatgpt.dhexx.cn/article/jb1g3fMv.shtml

相关文章

C#中SaveFileDialog 和OpenFileDialog 的用法

1.OpenFileDialog private void btnOpen_Click(object sender, EventArgs e){OpenFileDialog ofd new OpenFileDialog();ofd.InitialDirectory "C:\Users\LWP1398\Desktop"; //设置初始路径ofd.Filter "Excel文件(*.xls)|*.xls|Csv文件(*.csv)|*.csv|所有文…

C#窗体设计SaveFileDialog的用法

本文讲解C#窗体设计SaveFileDialog的用法。 操作流程 1.1. SaveFileDialog概念 1.1.1. 基本属性 Windows 窗体 SaveFileDialog 组件是一个预先配置的对话框。 它与 Windows 使用的标准“保存文件”对话框相同。 该组件继承自 CommonDialog 类。SaveFileDialog用于保存文件&…

改变世界的17个数学公式

目录 1、勾股定理 2、对数 3、微积分 4、万有引力定律 5、-1的平方根 6、多面体欧拉定理 7、 正态分布 8、波动方程 9、傅里叶变换 10、纳维-斯托克斯方程 11 麦克斯韦方程组 12 热力学第二定律 13 爱因斯坦的质能方程 14 稳态非线性方程 15、信息熵 16 、混沌…

【存储】什么是纠删码(与纠错码的区别)|纠删码与副本对比|LDPC码

目录 什么是纠删码(与纠错码的区别) FEC (前向错误纠正技术)介绍 纠删码与副本对比 什么是纠删码(与纠错码的区别) 存储领域来看&#xff0c;数据冗余机制其实这几十年来没有太多进展&#xff0c;RAID&#xff0c;副本一直是当仁不让的最终选择。而近几年&#xff0c;尤其是规模…

Web安全攻防

第三章 常用的渗透测试工具 Low级别基于布尔的盲注思路 1.判断是否存在注入&#xff0c;注入是字符型还是数字型 2.猜解当前数据库名 3.猜解数据库中的表名 4.猜解表中的字段名 5.猜解数据 判断是否有sql注入 输入1、1’ and 11 #、1’ and 12# 得到结果User ID exist…

Packet Chasing:通过缓存侧信道监视网络数据包

摘要 本文介绍了一种对网络的攻击–Packet Chasing&#xff0c;这种攻击不需要访问网络&#xff0c;无论接收数据包的进程的特权级别如何&#xff0c;都能发挥作用。一个间谍进程可以很容易地探测和发现网络驱动程序使用的每个缓冲区的确切缓存位置。更有用的是&#xff0c;它…

计算机网络cdm编码实验,【计算机网络】第二章:物理层(Part2:信道复用技术和宽带接入技术)...

CN.StudyLog.Ch2.Physical Layer.物理层(Part2.信道复用&宽带接入) 信道复用技术 频分复用(FDM&#xff0c;Frequency Division Multiplexing) 时分复用(TDM&#xff0c;Time-division multiplexing) 波分复用(WDM,Wavelength Division Multiplexing) 码分复用(CDM&#xf…

Kettle ETL处理工具

集群模式&#xff08;Linux&#xff09; 注意&#xff1a;检测服务器是否有jdk 1)准备三台服务器 HOST映射IPCUP内存端口Msternode01192.168.xx.xx1632G8080SlaveFristnode02192.168.xx.xx1632G8081SlaveSecondnode03192.168.xx.xx3232G8082 查看服务器上各个端口是否被占用…

操作系统,计算机网络,数据库刷题笔记11

操作系统&#xff0c;计算机网络&#xff0c;数据库刷题笔记11 2022找工作是学历、能力和运气的超强结合体&#xff0c;遇到寒冬&#xff0c;大厂不招人&#xff0c;可能很多算法学生都得去找开发&#xff0c;测开 测开的话&#xff0c;你就得学数据库&#xff0c;sql&#xf…

隐蔽信道相关概念(持续更)

通常&#xff0c;黑客会使用隐蔽网络躲避防火墙和IDS等。通过不可检测的网络从目标主机窃取数据的网络被称为隐蔽信道&#xff0c;而这些流量在网络监控设备/应用和网络管理员看来像是一般的正常流量。两个端点用户可以利用隐蔽信道&#xff0c;进行无法被检测到的网络通信。 什…

数据库原理复习与知识点总结

2022.5.29 更新&#xff1a;大学最后一门考试考完啦&#xff0c;开始下一阶段的学习 2022.5.26 更新&#xff1a;成功更完&#xff0c;开始刷题&#xff01; 2022.5.25 更新&#xff1a;争取明天更完 以下为原内容 第一章 绪论 1.1 数据库系统概述 数据库技术是信息系统的核…

数据库系统概论

目录 前言绪论数据库系统概述四个基本概念数据管理技术的产生和发展&#xff08;了解&#xff09;人工管理阶段文件系统阶段 数据库系统阶段整体数据结构化&#xff08;本质区别&#xff09;数据的共享性高&#xff0c;冗余度低&#xff0c;易扩充数据独立性高数据由DBMS统一管…

软件测试(白盒测试与黑盒测试)

黑盒测试 概述 黑盒测试用例设计方法包括 等价类划分法、边界值分析法、错误推测法、因果图法、判定表驱动法、正交试验设计法、功能图法、场景图法等 等价类划分法 概念 等价类划分法是把所有可能输入的数据&#xff0c;即程序的输入域划分若干部分&#xff08;子集&#xff0…

软件测试方法之黑盒测试与白盒测试

软件测试方法之黑盒测试与白盒测试 摘要&#xff1a;黑盒测试与白盒测试都是软件测试的重要方法。白盒测试是通过程序的源代码进行测试而不使用用户界面&#xff0c;它主要用于检测软件编码过程中的错误&#xff1b;而黑盒测试是是通过使用整个软件或某种软件功能来严格地测试,…

软件测试技术之: 白盒测试和黑盒测试

白盒测试和黑盒测试 目录 1. 软件测试基本分类...1 2. 测试方法...2 2.1 白盒测试...2 2.1.1 语句覆盖...2 2.1.2 判定&#xff08;分支&#xff09;覆盖...3 2.1.3 条件覆盖...3 2.1.4 判定/条件覆盖...4 2.1.5 多重条件覆盖...5 2.1.6 路径覆…

黑盒测试VS白盒测试

文章目录 概述一、测试方式不同二、测试目的不同三、测试原则不同四、优缺点对比五、测试用例设计六、结语 概述 白盒测试 白盒测试也称为结构测试&#xff0c;主要用于检测软件编码过程中的错误。程序员的编程经验、对编程软件的掌握程度、工作状态等因素都会影响到编程质量&…

什么是黑盒测试,白盒测试,灰盒测试?

一、白盒测试 白盒测试也称为结构测试&#xff0c;主要应用于单元测试阶段&#xff0c;检测软件编码过程中的错误。程序员的编程经验、对编程软件的掌握程度、工作状态等因素都会影响到编程质量&#xff0c;导致代码错误。 白盒测试的方法&#xff1a; 强度由低到高: 语句覆盖…

黑盒白盒测试的区别

一.黑盒测试(Black-box Testing) 黑盒测试也称功能测试&#xff0c;测试中把被测的软件当成一个黑盒子&#xff0c;不关心盒子的内部结构是什么&#xff0c;只关心软件的输入数据与输出数据。 不看软件代码&#xff0c;只对功能进行测试 对软件进行操作&#xff0c;观察结果是…

黑盒测试、白盒测试

定义&#xff1a;黑盒测试&#xff1a;黑盒测试&#xff08;Black-box Testing&#xff09;&#xff0c;黑盒测试又称为“功能测试”&#xff0c;是将测试对象看做一个黑盒&#xff0c;在并不考虑软件产品的内部结构和处理过程的基础上对软件产品进行功能测试。 白盒测试&…

测试技术 --黑盒测试与白盒测试

黑盒测试与白盒测试的区别&#xff1a;黑盒测试不知道内部代 一、测试方式不同 1、黑盒测试&#xff1a;功能测试&#xff0c;是通过测试来检测每个功能是否都能正常使用。 2、白盒测试&#xff1a;称结构测试、透明盒测试、逻辑驱动测试或基于代码的测试。 二、测试目的不…