Asp.net(C#)文件操作函数大全(读取,删除,批量拷贝,删除...)

如果是
【菜科解读】
对于文件流的操作,首先你得引用命名空间:using System.IO;对文件的操作主要指两方面:第一,是对文件本身进行操作;第二,是对文件内容进行操作。
如果是前者,楼主可以使用System.IO.FileInfo等类型,对文件进行操作;后者的话可以通过System.IO.StreamReader,StreamWriter,FileStreamd等流对象对文件内容进行操作。
Asp.net(C#)对文件操作的方法(读取,删除,批量拷贝,删除...)
usingSystem.Data;usingSystem.Configuration;usingSystem.Web;usingSystem.Web.Security;usingSystem.Web.UI;usingSystem.Web.UI.WebControls;usingSystem.Web.UI.WebControls.WebParts;usingSystem.Web.UI.HtmlControls;usingSystem.Text;usingSystem.IO;namespaceEC{//////FileObj的摘要说明///publicclassFileObj{构造函数IDisposable成员取得文件后缀名#region写文件/*****************************************函数名称:WriteFile*功能说明:当文件不存时,则创建文件,并追加文件*参数:Path:文件路径,Strings:文本内容*调用示列:*stringPath=Server.MapPath("Default2.aspx");*stringStrings="这是我写的内容啊";*EC.FileObj.WriteFile(Path,Strings);*****************************************///////写文件//////
文件路径///
文件内容publicstaticvoidWriteFile(stringPath,stringStrings){if(!System.IO.File.Exists(Path)){//Directory.CreateDirectory(Path);System.IO.FileStreamf=System.IO.File.Create(Path);f.Close();f.Dispose();}System.IO.StreamWriterf2=newSystem.IO.StreamWriter(Path,true,System.Text.Encoding.UTF8);f2.WriteLine(Strings);f2.Close();f2.Dispose();}#endregion#region读文件/*****************************************函数名称:ReadFile*功能说明:读取文本内容*参数:Path:文件路径*调用示列:*stringPath=Server.MapPath("Default2.aspx");*strings=EC.FileObj.ReadFile(Path);*****************************************///////读文件//////
文件路径///publicstaticstringReadFile(stringPath){strings="";if(!System.IO.File.Exists(Path))s="不存在相应的目录";else{StreamReaderf2=newStreamReader(Path,System.Text.Encoding.GetEncoding("gb2312"));s=f2.ReadToEnd();f2.Close();f2.Dispose();}returns;}#endregion#region追加文件/*****************************************函数名称:FileAdd*功能说明:追加文件内容*参数:Path:文件路径,strings:内容*调用示列:*stringPath=Server.MapPath("Default2.aspx");*stringStrings="新追加内容";*EC.FileObj.FileAdd(Path,Strings);*****************************************///////追加文件//////
文件路径///
内容publicstaticvoidFileAdd(stringPath,stringstrings){StreamWritersw=File.AppendText(Path);sw.Write(strings);sw.Flush();sw.Close();sw.Dispose();}#endregion#region拷贝文件/*****************************************函数名称:FileCoppy*功能说明:拷贝文件*参数:OrignFile:原始文件,NewFile:新文件路径*调用示列:*stringOrignFile=Server.MapPath("Default2.aspx");*stringNewFile=Server.MapPath("Default3.aspx");*EC.FileObj.FileCoppy(OrignFile,NewFile);*****************************************///////拷贝文件//////
原始文件///
新文件路径publicstaticvoidFileCoppy(stringOrignFile,stringNewFile){File.Copy(OrignFile,NewFile,true);}#endregion#region删除文件/*****************************************函数名称:FileDel*功能说明:删除文件*参数:Path:文件路径*调用示列:*stringPath=Server.MapPath("Default3.aspx");*EC.FileObj.FileDel(Path);*****************************************///////删除文件//////
路径publicstaticvoidFileDel(stringPath){File.Delete(Path);}#endregion#region移动文件/*****************************************函数名称:FileMove*功能说明:移动文件*参数:OrignFile:原始路径,NewFile:新文件路径*调用示列:*stringOrignFile=Server.MapPath("../说明.txt");*stringNewFile=Server.MapPath("../../说明.txt");*EC.FileObj.FileMove(OrignFile,NewFile);*****************************************///////移动文件//////
原始路径///
新路径publicstaticvoidFileMove(stringOrignFile,stringNewFile){File.Move(OrignFile,NewFile);}#endregion#region在当前目录下创建目录/*****************************************函数名称:FolderCreate*功能说明:在当前目录下创建目录*参数:OrignFolder:当前目录,NewFloder:新目录*调用示列:*stringOrignFolder=Server.MapPath("test/");*stringNewFloder="new";*EC.FileObj.FolderCreate(OrignFolder,NewFloder);*****************************************///////在当前目录下创建目录//////
当前目录///
新目录publicstaticvoidFolderCreate(stringOrignFolder,stringNewFloder){Directory.SetCurrentDirectory(OrignFolder);Directory.CreateDirectory(NewFloder);}//////创建文件夹//////
publicstaticvoidFolderCreate(stringPath){//判断目标目录是否存在如果不存在则新建之if(!Directory.Exists(Path))Directory.CreateDirectory(Path);}#endregion#region创建目录publicstaticvoidFileCreate(stringPath){FileInfoCreateFile=newFileInfo(Path);//创建文件if(!CreateFile.Exists){FileStreamFS=CreateFile.Create();FS.Close();}}#endregion#region递归删除文件夹目录及文件/*****************************************函数名称:DeleteFolder*功能说明:递归删除文件夹目录及文件*参数:dir:文件夹路径*调用示列:*stringdir=Server.MapPath("test/");*EC.FileObj.DeleteFolder(dir);*****************************************///////递归删除文件夹目录及文件//////
///publicstaticvoidDeleteFolder(stringdir){if(Directory.Exists(dir))//如果存在这个文件夹删除之{foreach(stringdinDirectory.GetFileSystemEntries(dir)){if(File.Exists(d))File.Delete(d);//直接删除其中的文件elseDeleteFolder(d);//递归删除子文件夹}Directory.Delete(dir,true);//删除已空文件夹}}#endregion#region将指定文件夹下面的所有内容copy到目标文件夹下面果目标文件夹为只读属性就会报错。
/*****************************************函数名称:CopyDir*功能说明:将指定文件夹下面的所有内容copy到目标文件夹下面果目标文件夹为只读属性就会报错。
*参数:srcPath:原始路径,aimPath:目标文件夹*调用示列:*stringsrcPath=Server.MapPath("test/");*stringaimPath=Server.MapPath("test1/");*EC.FileObj.CopyDir(srcPath,aimPath);*****************************************///////指定文件夹下面的所有内容copy到目标文件夹下面//////
原始路径///
目标文件夹publicstaticvoidCopyDir(stringsrcPath,stringaimPath){try{//检查目标目录是否以目录分割字符结束如果不是则添加之if(aimPath[aimPath.Length-1]!=Path.DirectorySeparatorChar)aimPath+=Path.DirectorySeparatorChar;//判断目标目录是否存在如果不存在则新建之if(!Directory.Exists(aimPath))Directory.CreateDirectory(aimPath);//得到源目录的文件列表,该里面是包含文件以及目录路径的一个数组//如果你指向copy目标文件下面的文件而不包含目录请使用下面的方法//string[]fileList=Directory.GetFiles(srcPath);string[]fileList=Directory.GetFileSystemEntries(srcPath);//遍历所有的文件和目录foreach(stringfileinfileList){//先当作目录处理如果存在这个目录就递归Copy该目录下面的文件if(Directory.Exists(file))CopyDir(file,aimPath+Path.GetFileName(file));//否则直接Copy文件elseFile.Copy(file,aimPath+Path.GetFileName(file),true);}}catch(Exceptionee){thrownewException(ee.ToString());}}#endregion#region获取指定文件夹下所有子目录及文件(树形)/*****************************************函数名称:GetFoldAll(stringPath)*功能说明:获取指定文件夹下所有子目录及文件(树形)*参数:Path:详细路径*调用示列:*stringstrDirlist=Server.MapPath("templates");*this.Literal1.Text=EC.FileObj.GetFoldAll(strDirlist);*****************************************///////获取指定文件夹下所有子目录及文件//////
详细路径publicstaticstringGetFoldAll(stringPath){stringstr="";DirectoryInfothisOne=newDirectoryInfo(Path);str=ListTreeShow(thisOne,0,str);returnstr;}//////获取指定文件夹下所有子目录及文件函数//////
指定目录///
默认起始值,调用时,一般为0///
用于迭加的传入值,一般为空///publicstaticstringListTreeShow(DirectoryInfotheDir,intnLevel,stringRn)//递归目录文件{DirectoryInfo[]subDirectories=theDir.GetDirectories();//获得目录foreach(DirectoryInfodirinfoinsubDirectories){if(nLevel==0){Rn+="├";}else{string_s="";for(inti=1;i"+dirinfo.Name.ToString()+"";FileInfo[]fileInfo=dirinfo.GetFiles();//目录下的文件foreach(FileInfofInfoinfileInfo){if(nLevel==0){Rn+="│├";}else{string_f="";for(inti=1;i///获取指定文件夹下所有子目录及文件(下拉框形)//////
详细路径///
下拉列表名称///
默认选择模板名称publicstaticstringGetFoldAll(stringPath,stringDropName,stringtplPath){stringstrDrop="";}//////获取指定文件夹下所有子目录及文件函数//////
指定目录///
默认起始值,调用时,一般为0///
用于迭加的传入值,一般为空///
默认选择模板名称///publicstaticstringListTreeShow(DirectoryInfotheDir,intnLevel,stringRn,stringtplPath)//递归目录文件{DirectoryInfo[]subDirectories=theDir.GetDirectories();//获得目录foreach(DirectoryInfodirinfoinsubDirectories){Rn+="";if(nLevel==0){Rn+="┣";}else{string_s="";for(inti=1;i";FileInfo[]fileInfo=dirinfo.GetFiles();//目录下的文件foreach(FileInfofInfoinfileInfo){Rn+="";if(nLevel==0){Rn+="│├";}else{string_f="";for(inti=1;i";}Rn=ListTreeShow(dirinfo,nLevel+1,Rn,tplPath);}returnRn;}#endregion#region获取文件夹大小/*****************************************函数名称:GetDirectoryLength(stringdirPath)*功能说明:获取文件夹大小*参数:dirPath:文件夹详细路径*调用示列:*stringPath=Server.MapPath("templates");*Response.Write(EC.FileObj.GetDirectoryLength(Path));*****************************************///////获取文件夹大小//////
文件夹路径///publicstaticlongGetDirectoryLength(stringdirPath){if(!Directory.Exists(dirPath))return0;longlen=0;DirectoryInfodi=newDirectoryInfo(dirPath);foreach(FileInfofiindi.GetFiles()){len+=fi.Length;}DirectoryInfo[]dis=di.GetDirectories();if(dis.Length>0){for(inti=0;i///获取指定文件详细属性//////
文件详细路径///publicstaticstringGetFileAttibe(stringfilePath){stringstr="";System.IO.FileInfoobjFI=newSystem.IO.FileInfo(filePath);str+="详细路径:"+objFI.FullName+"文件名称:"+objFI.Name+"文件长度:"+objFI.Length.ToString()+"字节创建时间"+objFI.CreationTime.ToString()+"最后访问时间:"+objFI.LastAccessTime.ToString()+"修改时间:"+objFI.LastWriteTime.ToString()+"所在目录:"+objFI.DirectoryName+"扩展名:"+objFI.Extension;returnstr;}#endregion}}
目录操作System.IO 类
目录操作string[] drives = Directory.GetLogicalDrives();//本地驱动器的名,如:C:\等string path = Directory.GetCurrentDirectory();//获取应用程序的当前工作目录Path.GetFileName(@"c:\dir\file.txt");//获取子目录的名字,result的结果是file.txtDirectory.GetFiles(路径及文件名)//获取指定目录中的文件名(文件列表)DirectoryInfo di = new DirectoryInfo(@"f:\MyDir");//构造函数创建目录DirectoryInfo di=Directory.CreateDirectory(@"f:\bbs");//创建对象并创建目录if (di.Exists == false)//检查是否存在此目录di.Create();//创建目录DirectoryInfo dis = di.CreateSubdirectory("SubDir");//以相对路径创建子目录dis.Delete(true); //删除刚创建的子目录di.Delete(true);//删除创建目录文件操作Directory.Delete(@"f:\bbs2", true); //删除目录及其子目录和内容(如为假不能删除有内容的目录包括子目录)Directory.GetDirectories 方法 //获取指定目录中子目录的名称string[] dirs = Directory.GetDirectories(@"f:\", "b*");Console.WriteLine("此目录中以b开头的子目录共{0}个!", dirs.Length);foreach (string dir in dirs) { Console.WriteLine(dir); }Directory.GetFileSystemEntries //获取指定目录中的目录及文件名Directory.GetLogicalDrives //检索此计算机上格式为“:\”的逻辑驱动器的名称,【语法同上】Directory.GetParent //用于检索父目录的路径。
DirectoryInfo a = Directory.GetParent(path);Console.WriteLine(a.FullName);Directory.Move //移动目录及其在内的所有文件Directory.Move(@"f:\bbs\1", @"f:\bbs\2"); //将文件夹1内的文件剪到文件夹2内 文件夹2是刚创建的
Stream // 对字节的读写操作(包含对异步操作的支持) Reading Writing SeekingBinaryReader和BinaryWriter // 从字符串或原始数据到各种流之间的读写操作
FileStream类通过Seek()方法进行对文件的随机访问,默认为同步
TextReader和TextWriter //用于gb2312字符的输入和输出
StringReader和StringWriter //在字符串中读写字符
StreamReader和StreamWriter //在流中读写字符
BufferedStream 为诸如网络流的其它流添加缓冲的一种流类型.
MemoryStream 无缓冲的流
NetworkStream 互联网络上的流
12在本页阅读全文 本文导航 第1页: 首页 第2页: Asp.net(C#)文件操作实例大全 Asp.net,文件,操作,函数,大全,读取,删除,批量,
联想重装系统按哪个键?详解正确操作步骤及注意事项
对于联想电脑用户来说,了解如何正确地重装系统是非常重要的。
本文将为您详细介绍联想重装系统的按键选择、操作步骤及注意事项,帮助您有效地完成系统重装。
工具原料:系统版本:Windows 11品牌型号:联想ThinkPad X1 Carbon 2022款软件版本:最新的Windows安装介质工具一、联想重装系统按哪个键?1、在联想笔记本电脑上,当需要重装系统时,通常使用快捷键来进入启动菜单或BIOS设置界面。
对于大多数联想电脑,按下“F12”键可以在开机时进入启动菜单,这将允许您选择从USB驱动器或DVD光驱启动以进行系统重装。
如果您的设备支持Novo按钮,则可以通过长按此按钮来直接访问启动菜单。
二、详细操作步骤1、准备工作。
在开始重装系统之前,请确保备份重要数据。
如果您使用的是Windows 11,请下载最新的Windows安装介质制作工具,并制作USB启动盘。
2、进入启动菜单。
关闭电脑,然后重新启动。
开机时,反复按下“F12”键以进入启动菜单。
在某些联想设备上,您可能需要使用Novo按钮来实现此操作。
3、选择启动设备。
在启动菜单中,使用方向键选择USB启动盘,按“Enter”键确认。
这将启动Windows安装程序。
4、启动重装程序。
按照屏幕提示选择语言和输入法,点击“下一步”,然后选择“立即安装”。
5、输入产品密钥。
如果系统提示输入Windows产品密钥,请输入密钥,或选择“我没有产品密钥”以继续(稍后可在系统激活时输入)。
6、选择安装类型。
选择“自定义:仅安装Windows(高级)”,然后选择要安装的目标磁盘。
如果要彻底清除以前的系统,请格式化目标磁盘。
7、完成安装。
安装过程结束后,系统将会自动重启,您可按照提示完成初始系统设置。
三、注意事项1、备份数据。
重装系统会导致所有数据丢失,务必提前备份重要文件。
2、确认兼容性。
确保下载的Windows版本与您的硬件兼容,并且驱动程序已在安装介质中准备好以防止驱动问题。
3、电源需求。
确保笔记本电脑连接电源,防止由于电池耗尽导致安装中断。
拓展知识:1、BIOS与UEFI。
对于较新的电脑,BIOS已逐渐被UEFI取代。
UEFI提供了比BIOS更大的硬盘支持、更快的启动时间和更好的系统安全性。
在多数情况下,重装系统时仍然需要使用BIOS/UEFI菜单来选择启动顺序或进行某些硬件设置。
2、Windows恢复分区。
联想电脑通常自带恢复分区,允许用户通过特定按键组合进行系统恢复。
需要注意的是,使用恢复分区进行恢复会将系统还原至出厂状态,并非最新版本的Windows系统。
总结:本文详细介绍了联想电脑重装系统的按键选择、操作步骤及重要注意事项。
重装系统可以解决许多系统问题,但需注意数据备份和兼容性确认。
在操作前,充分了解并准备相关工具将有助于提升重装系统的成功率。
win7开机系统还原操作指南
相信很多人都遇到过电脑出现问题,导致系统崩溃或者运行缓慢的情况。
而win7开机系统还原就是一个非常好用的功能,可以帮助我们解决这些问题。
下面我将通过一个案例来引出这个话题,并简要概括文章内容,阐述自身论点。
工具原料:系统版本:Windows 7品牌型号:Dell Inspiron 15软件版本:系统自带还原功能正文:一、为什么需要系统还原系统还原是一种非常重要的功能,它可以帮助我们恢复到之前的系统状态,解决一些系统崩溃、运行缓慢等问题。
比如,小明的电脑最近运行速度变得非常慢,他尝试了很多方法都无法解决。
这时,他想起了系统还原这个功能,于是他打开了系统还原,选择了一个之前的时间点进行还原。
结果,电脑恢复了正常的运行速度,问题得到了解决。
二、如何进行系统还原1、打开系统还原功能首先,我们需要打开系统还原功能。
在win7系统中,我们可以通过以下步骤来打开系统还原:点击“开始”按钮,选择“所有程序”,然后找到“附件”文件夹,再点击“系统工具”,最后点击“系统还原”。
2、选择还原点在系统还原界面,我们可以看到一个日历,上面标有不同的日期。
这些日期代表了我们可以选择的还原点。
我们可以根据自己的需求选择一个合适的还原点,然后点击“下一步”。
3、确认还原在确认还原界面,系统会显示我们选择的还原点以及将要还原的文件。
我们需要仔细检查这些信息,确保没有问题后,点击“完成”按钮,系统就会开始进行还原操作。