文件创建、打开、保存、复制
C#网络应用编程
窗体展示
代码参考
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.IO;
namespace xxxx
{
public partial class MainWindow : Form
{
public MainWindow()
{
InitializeComponent();
}
// 创建TXT文本文件
private void button_create_Click(object sender, EventArgs e)
{
SaveFileDialog saveFileDialog = new SaveFileDialog();
saveFileDialog.Title = "创建";
saveFileDialog.Filter = "文本文件(*.txt)|*.txt";
saveFileDialog.FileName = Path.GetFileName(textBox_path.Text); // 设置默认文件名
saveFileDialog.InitialDirectory = Path.GetDirectoryName(textBox_path.Text); // 设置初始目录
if (saveFileDialog.ShowDialog() == DialogResult.OK)
{
var filePath = saveFileDialog.FileName;
textBox_path.Text = Path.ChangeExtension(filePath, null);
File.WriteAllText(filePath, ""); // 创建文件时写入空字符串
textBox_tip.Text = "文件已创建:" + filePath;
}
}
// 打开对应文本文件
private void button_open_Click(object sender, EventArgs e)
{
OpenFileDialog openFileDialog = new OpenFileDialog();
openFileDialog.Filter = "文本文件(*.txt)|*.txt";
openFileDialog.FileName = Path.GetFileName(textBox_path.Text); // 设置默认文件名
openFileDialog.InitialDirectory = Path.GetDirectoryName(textBox_path.Text); // 设置初始目录
if (openFileDialog.ShowDialog() == DialogResult.OK)
{
var filePath = openFileDialog.FileName;
textBox_path.Text = Path.ChangeExtension(filePath, null);
textBox_content.Text = File.ReadAllText(filePath);
textBox_tip.Text = "文件已打开:" + filePath;
}
}
// 保存更改后的文本文件
private void button_save_Click(object sender, EventArgs e)
{
var filePath = textBox_path.Text+".txt";
if (string.IsNullOrWhiteSpace(filePath))
{
textBox_tip.Text = "文件路径不能为空。";
return;
}
File.WriteAllText(filePath, textBox_content.Text);
textBox_tip.Text = "文件已保存。";
}
// 复制对应的文本文件
private void button_copy_Click(object sender, EventArgs e)
{
OpenFileDialog openFileDialog = new OpenFileDialog();
openFileDialog.Filter = "Text Files (*.txt)|*.txt";
openFileDialog.FileName = Path.GetFileName(textBox_path.Text); // 设置默认文件名
openFileDialog.InitialDirectory = Path.GetDirectoryName(textBox_path.Text); // 设置初始目录
if (openFileDialog.ShowDialog() == DialogResult.OK)
{
var sourcePath = openFileDialog.FileName;
var sourceFileName = Path.GetFileNameWithoutExtension(sourcePath); // 获取不包含扩展名的文件名
var sourceExtension = Path.GetExtension(sourcePath); // 获取文件扩展名
var destinationFileName = $"{sourceFileName}_copy{sourceExtension}"; // 生成包含 "_copy" 后缀的文件名
SaveFileDialog saveFileDialog = new SaveFileDialog();
saveFileDialog.Filter = "文本文件(*.txt)|*.txt";
saveFileDialog.FileName = destinationFileName; // 将生成的文件名设置为默认文件名
if (saveFileDialog.ShowDialog() == DialogResult.OK)
{
var destinationPath = saveFileDialog.FileName;
File.Copy(sourcePath, destinationPath, true);
textBox_tip.Text = "文件已复制到:" + destinationPath;
}
}
}
}
}
//From:TengMMVP