- usingSystem;
- usingSystem.Text;
- usingSystem.IO;
- namespaceXXXX.Common
- {
- ///<summary>
- ///文本文件从磁盘读取、写入
- ///</summary>
- publicclassFileHelper
- {
- ///<summary>
- ///从文件中读取文本内容
- ///</summary>
- ///<paramname="filePath">文本路径</param>
- ///<returns>返回文件中的内容</returns>
- publicstaticstringRead(stringfilePath)
- {
- stringresult=string.Empty;
- if(File.Exists(filePath))
- {
- using(StreamReadersr=newStreamReader(filePath,Encoding.Default))
- {
- result=sr.ReadToEnd();
- sr.Close();
- returnresult;
- }
- }
- returnresult;
- }
- ///<summary>
- ///写入文本文件,按默认编码
- ///</summary>
- ///<paramname="filePath">文本文件路径包括文件名</param>
- ///<paramname="content">写入内容</param>
- publicstaticvoidWrite(stringfilePath,stringcontent)
- {
- using(StreamWritersw=newStreamWriter(filePath,false,Encoding.Default))
- {
- sw.Write(content);
- sw.Close();
- }
- }
- ///<summary>
- ///写入文本文件,以UFT8格式编码
- ///</summary>
- ///<paramname="filePath">文本文件路径包括文件名</param>
- ///<paramname="content">写入内容</param>
- ///<paramname="UTF8"></param>
- publicstaticvoidWrite(stringfilePath,stringcontent,boolUTF8)
- {
- using(StreamWritersw=newStreamWriter(filePath,false,Encoding.UTF8))
- {
- sw.Write(content);
- sw.Close();
- }
- }
- ///<summary>
- ///备份文件
- ///</summary>
- ///<paramname="sourceFileName">源文件路径</param>
- ///<paramname="destFileName">目标文件路径</param>
- ///<paramname="overwrite">是否覆盖已存在文件</param>
- ///<returns></returns>
- publicstaticboolBackupFile(stringsourceFileName,stringdestFileName,booloverwrite)
- {
- boolflag;
- if(!File.Exists(sourceFileName))
- {
- thrownewFileNotFoundException(sourceFileName+"文件不存在!");
- }
- if(!overwrite&&File.Exists(destFileName))
- {
- returnfalse;
- }
- try
- {
- File.Copy(sourceFileName,destFileName,true);
- flag=true;
- }
- catch(Exceptionexception)
- {
- throwexception;
- }
- returnflag;
- }
- ///<summary>
- ///拷贝文件夹文件
- ///</summary>
- ///<paramname="srcDir"></param>
- ///<paramname="dstDir"></param>
- publicstaticvoidCopyDirFiles(stringsrcDir,stringdstDir)
- {
- if(Directory.Exists(srcDir))
- {
- foreach(stringstrinDirectory.GetFiles(srcDir))
- {
- stringdestFileName=Path.Combine(dstDir,Path.GetFileName(str));
- File.Copy(str,destFileName,true);
- }
- foreach(stringstr3inDirectory.GetDirectories(srcDir))
- {
- stringstr4=str3.Substring(str3.LastIndexOf(@"\")+1);
- CopyDirFiles(Path.Combine(srcDir,str4),Path.Combine(dstDir,str4));
- }
- }
- }
- ///<summary>
- ///删除文件夹文件
- ///</summary>
- ///<paramname="dir"></param>
- publicstaticvoidDeleteDirFiles(stringdir)
- {
- if(Directory.Exists(dir))
- {
- foreach(stringstrinDirectory.GetFiles(dir))
- {
- File.Delete(str);
- }
- foreach(stringstr2inDirectory.GetDirectories(dir))
- {
- Directory.Delete(str2,true);
- }
- }
- }
- ///<summary>
- ///获得文件最后修改时间
- ///</summary>
- ///<paramname="file"></param>
- ///<returns></returns>
- publicstaticDateTimeGetFileLastWriteTime(stringfile)
- {
- if(File.Exists(file))
- {
- returnFile.GetLastWriteTime(file);
- }
- returnDateTime.MaxValue;
- }
- ///<summary>
- ///取消文件的只读属性
- ///</summary>
- ///<paramname="file"></param>
- publicstaticvoidRemoveFileReadOnlyAttribute(stringfile)
- {
- File.SetAttributes(file,File.GetAttributes(file)&~FileAttributes.ReadOnly);
- }
- }
- }