📄 frmmain.cs
字号:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.IO;
using System.Diagnostics;
namespace FileProject
{
public partial class frmMain : Form
{
private string m_Address = @"C:\Files";
public frmMain()
{
InitializeComponent();
}
private void frmMain_Load(object sender, EventArgs e)
{
FillList();
}
private void btnCreate_Click(object sender, EventArgs e)
{
if (txtName.Text.Trim() == string.Empty) return; //若txtName文本框中的内容为空,则不进行任何操作
string m_Path = m_Address + @"\" + txtName.Text.Trim(); //生成所需创建文件的绝对路径
FileInfo m_FileInfo = new FileInfo(m_Path); //使用FileInfo类创建指定的文件
m_FileInfo.Create();
FillList(); //刷新【lstFile】列表,使其内容与指定文件夹中的内容保持同步
return;
}
private void btnDelete_Click(object sender, EventArgs e)
{
if (lstFile.SelectedItems.Count < 1) return; //若lstFile中选中的内容为空,则不进行任何操作
//使用foreach遍历指定选中的所有文件
foreach (ListViewItem m_Item in lstFile.SelectedItems)
{
//生成所需创建文件的绝对路径并删除之
string m_Path = m_Address + @"\" + m_Item.Text;
File.Delete(m_Path);
}
FillList(); //刷新lstFile,使其内容与指定文件夹中的内容保持同步
return;
}
private void btnRename_Click(object sender, EventArgs e)
{
//若lstFile中选中的文件个数不等于一,则不进行任何操作
if (lstFile.SelectedItems.Count != 1) return;
//生成原文件的绝对路径
string m_PathOld = m_Address + @"\" + lstFile.SelectedItems[0].Text;
//生成新文件的绝对路径
string m_PathNew = m_Address + @"\" + txtName.Text.Trim();
//判断当前目录下是否已存在同名文件
if (File.Exists(m_PathNew))
{
MessageBox.Show("已存在同名文件!");
return;
}
else
{
//重命名文件
FileInfo m_FileInfo = new FileInfo(m_PathOld);
m_FileInfo.MoveTo(m_PathNew);
//刷新lstFile,使其内容与指定文件夹中的内容保持同步
FillList();
return;
}
}
private void lstFile_DoubleClick(object sender, EventArgs e)
{
//若lstFile中选中的文件个数不等于一,则不进行任何操作
if (lstFile.SelectedItems.Count != 1) return;
//初始化一个Process类的实例
Process m_Process = new Process();
//生成所需打开文件的绝对路径并将其StartInfo的FileName属性设置为此路径
string m_Path = m_Address + @"\" + lstFile.SelectedItems[0].Text;
m_Process.StartInfo.FileName = m_Path;
//尝试打开指定的文件并对异常进行处理
try
{
m_Process.Start();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
return;
}
private void FillList()
{
lstFile.Clear(); //清楚lstFile的当前内容
//使用foreach遍历指定路径下的所有文件
foreach(string m_FileName in Directory.GetFiles(m_Address))
{
//对获得的文件名进行处理,使其只包含文件名和后缀名
string m_Name = m_FileName.Substring(m_Address.Length + 1, m_FileName.Length - m_Address.Length - 1);
ListViewItem m_Item = lstFile.Items.Add(m_Name); //将文件名显示到lstFile中
m_Item.ImageIndex = 0; //设置ListViewItem的显示图标
}
return;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -