您的位置:首页 > 其它

再谈后兵 FileInfo 与 DirectoryInfo类 清晰的winform界面(技术改变世界-cnblog)

2012-01-16 16:27 751 查看
前篇写了 File类与Directory类,今天写 他的 实例类,嘿嘿

先上张图:

View Code

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;

namespace FileInfoAndDirectoryInfo
{
public partial class File_Directroy_Info : Form
{
public File_Directroy_Info()
{
InitializeComponent();
}

private void File_Directroy_Info_Load(object sender, EventArgs e)
{
//textBox未输入 Button不可用

btnShowInfo.Enabled = false;
btnNewF.Enabled = false;
btnShowInfo2.Enabled = false;
btnNewD.Enabled = false;
btnSelectD.Enabled = false;
btnSelectD.Enabled = false;
btnSelectF.Enabled = false;
btnSelectAll.Enabled = false;

}

//TextBox1 事件
private void txtPathFile_TextChanged(object sender, EventArgs e)
{
btnNewF.Enabled = true;
btnShowInfo.Enabled = true;
}

//TextBox2 事件
private void txtDirectory_TextChanged(object sender, EventArgs e)
{
btnShowInfo2.Enabled = true;
btnNewD.Enabled = true;

}
//TextBox3 事件
private void txtSelect_TextChanged(object sender, EventArgs e)
{
btnSelectD.Enabled = true;
btnSelectF.Enabled = true;
btnSelectAll.Enabled = true;

}

//新建文件 事件
private void btnNewFile(object sender, EventArgs e)
{
lbShowInfo1.Items.Clear();
if (txtPathFile.Text == string.Empty)
{
MessageBox.Show("不能为空");
return;
}
else
{
FileInfo file = new FileInfo(txtPathFile.Text);
if (file.Exists)
{
MessageBox.Show("文件名存在!");
return;
}
else
{
file.Create();
lbShowInfo1.Items.Add(string.Format("提示:{0}已创建",txtPathFile.Text));
}
}
}

//显示文件详细信息 事件
private void btnShowInfo_Click(object sender, EventArgs e)
{
lbShowInfo1.Items.Clear();
if (txtPathFile.Text == string.Empty)
{
MessageBox.Show("文件为空!");
return;
}
else
{
FileInfo file=new FileInfo(txtPathFile.Text);
if (!file.Exists)
{
DialogResult result=MessageBox.Show("文件不存在,是否创建该文件","提示",MessageBoxButtons.OKCancel,MessageBoxIcon.Warning);

if (result == DialogResult.OK)
{
file.Create();
lbShowInfo1.Items.Add(string.Format("提示:{0}已创建", txtPathFile.Text));
ShowInfo(txtPathFile.Text, lbShowInfo1);
}
else
{
return;
}
}
else
{
ShowInfo(txtPathFile.Text, lbShowInfo1);
}
}
}

//定义文件信息显示方法
private void ShowInfo(string filename,ListBox lb)
{
FileInfo file = new FileInfo(filename);
string creatTime = "创建时间:"+file.CreationTime.ToString() ;
string directory = "父目录:"+file.Directory.ToString();
string exist = (file.Exists) ? "文件: 存在" : "文件: 不存在";
string extension = "扩展名:"+file.Extension;
string length = "字节:"+file.Length.ToString();
string isonlyread = (file.IsReadOnly) ? "文件:只读" : "文件:读写";
string name = "文件名:" + file.Name;
string[] strs = { creatTime,directory,exist,extension,length,isonlyread,name};
foreach (var n in strs)
{
lb.Items.Add(n);
}

}

//新建目录 事件
private void btnNewD_Click(object sender, EventArgs e)
{
lbShowInfo2.Items.Clear();
if (txtDirectory.Text == string.Empty)
{
MessageBox.Show("目录为空!");
return;
}
else
{
DirectoryInfo directory = new DirectoryInfo(txtDirectory.Text);
if (directory.Exists)
{
MessageBox.Show("目录名存在!");
return;
}
else
{
directory.Create();
lbShowInfo2.Items.Add("提示: 目录已创建");
}

}
}

private void btnShowInfo2_Click(object sender, EventArgs e)
{
lbShowInfo2.Items.Clear();
if (txtDirectory.Text == string.Empty)
{
MessageBox.Show("目录为空!");
return;
}
else
{
DirectoryInfo directory = new DirectoryInfo(txtDirectory.Text);
if (!directory.Exists)
{
DialogResult result = MessageBox.Show("查询的目录不存在,是否新建该目录", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning);
if (result == DialogResult.OK)
{
directory.Create();
lbShowInfo2.Items.Add("提示:目录已创建");
ShowInfo2(txtDirectory.Text, lbShowInfo2);
}
else
{
return;
}
}

else
{
ShowInfo2(txtDirectory.Text, lbShowInfo2);
}
}
}

//显示信息的方法
private void ShowInfo2(string directory, ListBox lb)
{
DirectoryInfo dir=new DirectoryInfo(directory);
string creatTime = "创建时间:"+dir.CreationTime.ToString();
string exists=(dir.Exists)? "文件:存在" :"文件不存在";
string length = "父目录:" + dir.Parent.ToString();
string root = "根路径:" + dir.Root.ToString();
string[] strs = { creatTime,exists,length,root};
foreach(var n in strs)
{
lb.Items.Add(n);
}
Directory.GetDirectories(directory);
dir.GetDirectories();
}

private void btnSelect_Click(object sender, EventArgs e)
{
lbShowInfo2.Items.Clear();
DirectoryInfo dir = new DirectoryInfo(txtDirectory.Text);
DirectoryInfo[] dirs=dir.GetDirectories(txtSelect.Text);
foreach (var n in dirs)
{
lbShowInfo2.Items.Add(n);
}
}

private void btnSecletF_Click(object sender, EventArgs e)
{
lbShowInfo2.Items.Clear();
DirectoryInfo dir = new DirectoryInfo(txtDirectory.Text);
FileInfo[] files = dir.GetFiles(txtSelect.Text);
foreach(var n in files)
{
lbShowInfo2.Items.Add(n);
}

}

private void btnSelectAll_Click(object sender, EventArgs e)
{
lbShowInfo2.Items.Clear();
DirectoryInfo dir = new DirectoryInfo(txtDirectory.Text);
FileSystemInfo[] systeminfos = dir.GetFileSystemInfos(txtSelect.Text);
foreach (var n in systeminfos)
{
lbShowInfo2.Items.Add(n);
}
}

}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐