asp.net文件夹操作类FileInfo类和DirectoryInfo类的使用
FileInfo类和DirectoryInfo类的使用
.NET内建类型中提供了FileInfo和DirectoryInfo俩个类型,分别用来操作文件和文件夹,有别于File和Directory类型,FileInfo和DirectoryInfo主要功能在于操作文件和文件夹在文件系统中的结构,完成诸如:创建,复制,读取信息,移动,判断是否存在,删除等功能。public class UseFileInfo
{
//static void Main(string[] arg)
//{
// Processfile();
// Console.Read();
//}
static void Processfile()
{
FileInfo info = null;
FileInfo newInfo = null;
//创建文件
info = new FileInfo("c:\\test1.txt");
using (FileStream fs = info.Create())
{ }
Console.WriteLine("原始文件:");
ReadFileInfo(info);
//移动文件
info.MoveTo("c:\\test2.txt");
Console.WriteLine("移动后的新文件:");
ReadFileInfo(info);
//复制文件
newInfo = info.CopyTo("c:\\test3.txt");
Console.WriteLine("复制后的新文件:");
ReadFileInfo(newInfo);
}
static void ReadFileInfo(FileInfo fi)
{
Console.WriteLine("文件名为:"+fi.Name);
Console.WriteLine("文件在:"+fi.DirectoryName);
Console.WriteLine("文件的长度:"+fi.Length);
Console.WriteLine("文件创建于:"+fi.CreationTime);
Console.WriteLine("文件的最后访问时间:" + fi.LastAccessTime);
Console.WriteLine("文件的最后修改时间:" + fi.LastWriteTime);
Console.WriteLine("文件全名是:" + fi.FullName);
Console.WriteLine("文件的扩展名是:" + fi.Extension);
}
}
public class UseDirectoryInfo
{
static void Main(string[] args)
{
ProcessDirectoryInfo();
Console.Read();
}
static void ProcessDirectoryInfo()
{
DirectoryInfo di = null;
di = new DirectoryInfo("c:\\text");
di.Create();
di.CreateSubdirectory("subidc");
FileInfo info = new FileInfo("c:\\text\\subidc\\text.txt");
using (FileStream fs = info.Create()) { }
ReadDirectoryInfo(di);
di.MoveTo("c:\\test2");
}
static void ReadDirectoryInfo(DirectoryInfo di)
{
Console.WriteLine("文件夹名为:"+di.Name);
Console.WriteLine("父文件夹为:"+di.Parent.Name);
Console.WriteLine("文件夹创建于:"+di.CreationTime);
Console.WriteLine("文件夹的最后修改时间:" + di.LastWriteTime);
Console.WriteLine("文件夹的最后访问时间:" + di.LastAccessTime);
Console.WriteLine("文件夹的全名是:" + di.FullName);
Console.WriteLine("文件夹中的文件:");
FileInfo[] fis = di.GetFiles();
foreach (FileInfo fi in fis)
{
ReadFileInfo(fi);
}
Console.WriteLine("文件夹中的子文件夹:");
DirectoryInfo[] dis = di.GetDirectories();
foreach (DirectoryInfo dd in dis)//递归获取所有子文件夹
{
ReadDirectoryInfo(dd);
}
}
static void ReadFileInfo(FileInfo fi)
{
Console.WriteLine("文件名为:" + fi.Name);
Console.WriteLine("文件在:" + fi.DirectoryName);
Console.WriteLine("文件的长度:" + fi.Length);
Console.WriteLine("文件创建于:" + fi.CreationTime);
Console.WriteLine("文件的最后访问时间:" + fi.LastAccessTime);
Console.WriteLine("文件的最后修改时间:" + fi.LastWriteTime);
Console.WriteLine("文件全名是:" + fi.FullName);
Console.WriteLine("文件的扩展名是:" + fi.Extension);
}
}

浙公网安备 33010602011771号