文件保存

•public TestOne()
•{
• InitializeComponent();
• SaveFileDialog();//调用打开SaveFileDialog 保存对话框 •} •
•#region 保存对话框
•private void SaveFileDialog() •{
• //string localFilePath, fileNameExt, newFileName, FilePath; • SaveFileDialog saveFileDialog1 = new SaveFileDialog(); •
• //设置文件类型 • saveFileDialog1.Filter = " txt files(*.txt)|*.txt|All files(*.*)|*.*"; •
• //设置默认文件类型显示顺序 • saveFileDialog1.FilterIndex = 2;

• //保存对话框是否记忆上次打开的目录 • saveFileDialog1.RestoreDirectory = true; •
• //点了保存按钮进入 • if (saveFileDialog1.ShowDialog() == DialogResult.OK) • {
• //获得文件路径 • //localFilePath = saveFileDialog1.FileName.ToString(); •
• //获取文件名,不带路径 • //fileNameExt = localFilePath.Substring(localFilePath.LastIndexOf("\\") + 1); •
• //获取文件路径,不带文件名 • //FilePath = localFilePath.Substring(0, localFilePath.LastIndexOf("\\")); •
• //给文件名前加上时间 • //newFileName = DateTime.Now.ToString("yyyyMMdd") + fileNameExt; •
• //在文件名里加字符 • //saveFileDialog1.FileName.Insert(1,"dameng"); •
• System.IO.FileStream fs = (System.IO.FileStream)saveFileDialog1.OpenFile();//输出文件 •
• //fs输出带文字或图片的文件,就看需求了 • }
•} •
•#endregion


///
ofd.ValidateNames = true;

ofd.CheckPathExists = true;

ofd.CheckFileExists = true;

自定义帮助信息:

设置对象的ShowHelp属性可以出现一个帮助按钮,自定义帮助信息。

通过HelpRequest事件添加一个处理程序。

ofd.ShowHelp = true;

ofd.HelpRequest += new EventHandler(ofd_HelpRequest);

private void ofd_HelpRequest(object sender, EventArgs e)

{

MessageBox.Show("我自己定义的帮助信息:)");

}





单击帮助按钮就会显示我定义的帮助信息。



Multiselect属性可以使打开文件对话框打开多个文件。


设置

通过如下判断可以得到打开文件对话框单击的是哪个按钮。

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

{

}



保存文件对话框:

使用Title属性设置对话框的标题。

文件扩展名:

AddExtension是一个布尔属性,它定义了文件扩展名是否应自动添加到用户输入的文件名上。如果用户已经输入了一个文件扩展名,就不会添加其它扩展名了。所以如果用户输入了文件名test,就保存文件test.txt,如果输入了test.txt,保存的文件仍是test.txt,而不是test.txt.txt。

如果用户没有输入文件扩展名,就使用DefaultExt属性设置的文件扩展名。如果这个属性为空,就使用当前选择的Filter中定义的文件扩展名。如果设置了Filter和DefaultExt,则不论Filter是什么,都使用Default。

同OpenFileDialog一样,具有ValidateNames、CheckFileExists和CheckPathExists三个属性,区别是对于SaveFileDialog,CheckFileExists的默认值是false,表示可以提供新文件名,进行保存。

如果设置CreatePrompt属性为true,就会询问用户是否要创建一个新文件。

如果设置OverwritePrompt属性为true,就会询问用户是否要覆盖一个已有的文件。

进行如下定义一个保存文件对话框后,我们通过如下功能可以实现一个另存为的功能:

SaveFileDialog sfd = new SaveFileDialog();

private void miFileSaveAs_Click(object sender, EventArgs e)

{

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

{

string fileName = sfd.FileName;

SaveFile(fileName);

}

}



protected void SaveFile(string fileName)

{

try

{

Stream stream = File.OpenWrite(fileName);

using(StreamWriter writer = new StreamWriter(stream))

{

writer.Write(textBox1.Text);

}

}

catch(IOException ex)

{

MessageBox.Show(ex.Message,"Simple Editor",MessageBoxButtons.OK,MessageBoxIcon.Exclamation);

}

}


public TestOne()
{
InitializeComponent();
SaveFileDialog();//调用打开SaveFileDialog 保存对话框
}

#region 保存对话框
private void SaveFileDialog()
{
//string localFilePath, fileNameExt, newFileName, FilePath;
SaveFileDialog saveFileDialog1 = new SaveFileDialog();

//设置文件类型
saveFileDialog1.Filter = " txt files(*.txt)|*.txt|All files(*.*)|*.*";

//设置默认文件类型显示顺序
saveFileDialog1.FilterIndex = 2;

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

//点了保存按钮进入
if (saveFileDialog1.ShowDialog() == DialogResult.OK)
{
//获得文件路径
//localFilePath = saveFileDialog1.FileName.ToString();

//获取文件名,不带路径
//fileNameExt = localFilePath.Substring(localFilePath.LastIndexOf("//") + 1);

//获取文件路径,不带文件名
//FilePath = localFilePath.Substring(0, localFilePath.LastIndexOf("//"));

//给文件名前加上时间
//newFileName = DateTime.Now.ToString("yyyyMMdd") + fileNameExt;

//在文件名里加字符
//saveFileDialog1.FileName.Insert(1,"dameng");

System.IO.FileStream fs = (System.IO.FileStream)saveFileDialog1.OpenFile();//输出文件

//fs输出带文字或图片的文件,就看需求了
}
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值