C#需要另存为一个文件的控件是什么怎么用?

2024-11-19 22:55:44
推荐回答(3个)
回答1:

利用SaveFileDialog控件实现程序的“另存为"功能。

示例代码如下

(1)在Visual Studio中创建一个“Windows 窗体应用程序”项目

(2)如下图在Form1设计器上布置控件


设置openFileDialog1的属性:

设置saveFileDialog1的属性:

(3)窗体代码Form1.cs

using System;
using System.Windows.Forms;
using System.IO;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();

            label1.Text = string.Empty;

            button1.Text = "打开文件...";
            // 禁用"文件另存为..."按钮,因为还没有打开文件
            button2.Text = "文件另存为...";
            button2.Enabled = false;
        }

        private void button1_Click(object sender, EventArgs e)
        {
            // 显示打开文件对话框
            if (openFileDialog1.ShowDialog() == DialogResult.OK)
            {
                // 读入文件并显示在textBox1中
                textBox1.Clear();
                string[] allLines = File.ReadAllLines(openFileDialog1.FileName);
                foreach (string s in allLines)
                {
                    textBox1.AppendText(s + Environment.NewLine);
                }
                // 显示被打开文件的路径和名称
                label1.Text = openFileDialog1.FileName;
                // 允许 "文件另存为..."按钮
                button2.Enabled = true;
            }
        }

        private void button2_Click(object sender, EventArgs e)
        {
            // 为保存文件提供默认的文件名
            string fileName = Path.GetFileName(label1.Text);
            saveFileDialog1.FileName = 
                saveFileDialog1.InitialDirectory + "\\" + fileName;
            saveFileDialog1.Title = "另存为";
            if (saveFileDialog1.ShowDialog() == DialogResult.OK)
            {
                // 保存文件
                File.WriteAllLines(saveFileDialog1.FileName, textBox1.Lines);
                // 显示文件的路径和名称
                label1.Text = saveFileDialog1.FileName;
            }
        }
    }
}

(4)运行

启动后

打开文件...

打开文件后

另存为

回答2:

OpenFileDialog open = new OpenFileDialog(); //创建一个打开对话框
open.AddExtension = true; //设置是否自动在文件中添加扩展名
open.CheckFileExists = true; //检查文件
open.Filter = "MP3文件 (*.mp3)|*.mp3|所有文件 (*.*)|*.*"; //设置要打开的类型为mp3和任意文件
//string a="";
if (open.ShowDialog() == DialogResult.OK) //如果用户点击了“确定”
{

回答3:

SaveFileDialog控件,设置默认文件名是FileName属性,设置初始路径是InitialDirectory属性。