C#中的文件读写
来源:互联网 发布:mac应用程序开发教程 编辑:程序博客网 时间:2024/05/28 03:04
C#中的文件读写
一、递归删除文件夹目录和文件
/**************************************** * 函数名称:DeleteFolder * 功能说明:递归删除文件夹目录及文件 * 参 数:dir:文件夹路径 * 调用示列: * string dir = Server.MapPath("test/"); * DotNet.Utilities.FileOperate.DeleteFolder(dir); *****************************************//// <summary>/// 递归删除文件夹目录及文件/// </summary>/// <param name="dir"></param> /// <returns></returns>public static void DeleteFolder(string dir){ if (Directory.Exists(dir)) //如果存在这个文件夹删除之 { foreach (string d in Directory.GetFileSystemEntries(dir)) { if (File.Exists(d)) File.Delete(d); //直接删除其中的文件 else DeleteFolder(d); //递归删除子文件夹 } Directory.Delete(dir, true); //删除已空文件夹 }}
2、获取指定文件的详细属性
#region 获取指定文件详细属性 /**************************************** * 函数名称:GetFileAttibe(string filePath) * 功能说明:获取指定文件详细属性 * 参 数:filePath:文件详细路径 * 调用示列: * string file = Server.MapPath("robots.txt"); * Response.Write(DotNet.Utilities.FileOperate.GetFileAttibe(file)); *****************************************/ /// <summary> /// 获取指定文件详细属性 /// </summary> /// <param name="filePath">文件详细路径</param> /// <returns></returns> public static string GetFileAttibe(string filePath) { StringBuilder str = new StringBuilder(); System.IO.FileInfo objFI = new System.IO.FileInfo(filePath); str.AppendLine("详细路径:" + objFI.FullName); str.AppendLine("文件名称:" + objFI.Name); str.AppendLine("文件长度:" + objFI.Length.ToString()+"字节"); str.AppendLine("创建时间" + objFI.CreationTime.ToString()); str.AppendLine("最后访问时间:" + objFI.LastAccessTime.ToString()); str.AppendLine("修改时间:" + objFI.LastWriteTime.ToString()); str.AppendLine("所在目录:" + objFI.DirectoryName); str.AppendLine("扩展名:" + objFI.Extension); return str.ToString(); } #endregion
三、搜索指定目录含子目录返回此文件的路径名
#region 搜索指定目录含子目录,返回此文件的路径名 /// <summary> /// 搜索指定目录含子目录,返回此文件的路径名 /// 如果不存在,返回NULL /// </summary> /// <param name="dir">指定路径(路径必须有访问权限)</param> /// <param name="ProName">文件或文件夹名称</param> /// <returns></returns> public string GetFileByNameURl(string dir, string ProName) { if (Directory.Exists(dir)) //如果路径正确 { foreach (string d in Directory.GetFileSystemEntries(dir)) { string FileName = d.Substring(d.LastIndexOf("\\") + 1); if (ProName.ToLower().Equals(FileName.ToLower())) { return d; } string URl = GetFileByNameURl(d, ProName); if (URl != null) { return URl; } } } return null; } #endregion
四、读取文件内容
#region 读取文件所有内容 /// <summary> /// 读取文件内所有内容 /// </summary> /// <param name="OpenFileUrl"></param> /// <returns></returns> public static string GetAllFileContent(string url) { if (string.IsNullOrEmpty(url)) throw new Exception("文件路径不能为空!"); using (var stream = File.OpenRead(url)) { StreamReader StrRed = new StreamReader(stream); var Content = StrRed.ReadToEnd(); StrRed.Close(); return Content; } } #endregion
逐行读取文件
#region 逐行读取文件 /// <summary> /// 逐行读取文本文件 /// </summary> /// <param name="url"></param> /// <returns></returns> public static List<string> GetReadLine(string url) { if (string.IsNullOrEmpty(url)) throw new Exception("文件路径不能为空!"); using (var Stream = File.OpenRead(url)) { StreamReader StrReader = new StreamReader(Stream); string Rest = ""; List<string> Content = new List<string>(); while ((Rest = StrReader.ReadLine()) != null) { Content.Add(Rest); } return Content; } } #endregion
向文件中追加内容
#region 追加文件内容 /// <summary> /// 追加文件 /// </summary> /// <param name="Path">文件路径</param> /// <param name="strings">内容</param> public static void FileAdd(string Path, string strings) { StreamWriter sw = File.AppendText(Path); sw.Write(strings); sw.Flush(); sw.Close(); sw.Dispose(); } #endregion
按字节流读取一个文件,并写入到指定位置
using (FileStream fileStream = new FileStream(filePath,FileMode.OpenOrCreate,FileAccess.ReadWrite)){ BinaryReader bitRed = new BinaryReader(fileStream); int fileLength = (int)fileStream.Length; Byte[] image = new Byte[fileLength]; bitRed.Read(image, 0, fileLength); //按字节流读取 string savePath ="E:\\222.jpg"; FileStream fielwriter = new FileStream(savePath, FileMode.Create, FileAccess.ReadWrite); using (BinaryWriter writer = new BinaryWriter(fielwriter)) { writer.Write(image); MessageBox.Show("文件写入成功!"); }}
七、一封装方法,
/// <summary> /// Returns file content in a form of base64 string /// </summary> /// <param name="stream">File stream</param> /// <returns>Base64 representation of the file</returns> private string GetFileContent(Stream stream) { int streamLength = (int)stream.Length; byte[] fileData = new byte[streamLength + 1]; stream.Read(fileData, 0, streamLength); stream.Close(); return Convert.ToBase64String(fileData); }
呼呼····就写到这里了。。
0 0
- C#中的读写文件
- C#中的文件读写
- c#中的文件读写操作
- C#中的读写文件操作函数总结
- C#中的文件操作及文件的读写
- C#中实现读写INI文件中的值
- c#中的word 读写
- C#中的串口读写
- C#读写INI文件
- C#读写INI文件
- C#读写INI文件
- C#读写INI文件
- c#读写xml文件
- c#读写xml文件
- c#读写xml文件
- C#读写文件
- C# 文件读写
- C#读写xml文件
- (大学生)保持乐观的心态
- DOM事件流详解
- static-001
- Andriod应用性能测试-流量、电量
- 极光推送Jpush配置步骤
- C#中的文件读写
- 分享一个用了很久的免费国外空间,适合用于测试
- Hadoop安装教程_单机/伪分布式配置_Hadoop2.6.0/Ubuntu14.04
- 【IMX6UL】嵌入式Linux系统开发免费视频
- 1508-张晨曦总结《2016年-12月-1日》【连续41天总结】
- 安装xampp后apache不能启动解决方法
- Monkey内存、CPU测试
- 弟子规
- elasticsearch5.0.0在windows中的安装方法