//注:对于读取/写入文件操作时,需判断当前文件是否存在 using System.IO; using System.Text; namespace Callno.Common { public class FileHelper { //定义一个用于保存静态变量的实例 private static FileHelper instance = null; //定义一个保证线程同步的标识 private static readonly object locker = new object(); //构造函数为私有,使外界不能创建该类的实例 private FileHelper() { } public static FileHelper Instance { get { if (instance == null) { lock (locker) { if (instance == null) instance = new FileHelper(); } } return instance; } } public void SaveLogToTxt(string dir, string filePath, string text, bool isAppend = false) { if (!Directory.Exists(dir)) Directory.CreateDirectory(dir); filePath = filePath + ".txt"; using (StreamWriter sw = new StreamWriter(filePath, isAppend)) { sw.WriteLine(text); sw.Flush(); sw.Close(); } } public void SaveText(string dir, string fileName, string WriteTxt) { try { if (!Directory.Exists(dir)) Directory.CreateDirectory(dir); //创建一个文件流,用以写入或者创建一个StreamWriter FileStream fs = new FileStream(dir + "\\" + fileName + ".txt", FileMode.OpenOrCreate, FileAccess.Write); StreamWriter streamWriter = new StreamWriter(fs); streamWriter.Flush(); // 使用StreamWriter来往文件中写入内容 streamWriter.BaseStream.Seek(0, SeekOrigin.End); // 把richTextBox1中的内容写入文件 streamWriter.WriteLine(WriteTxt); //关闭此文件 streamWriter.Flush(); streamWriter.Close(); } catch { } } //注:对于读取/写入文件操作时,需判断当前文件是否存在 public string ReadAllText(string filePath) { if(!File.Exists(filePath))return filePath + ",文件不存在"; return File.ReadAllText(filePath); } //注:对于读取/写入文件操作时,需判断当前文件是否存在 public string ReadFileStream(string filePath) { string result = string.Empty; try { if(!File.Exists(filePath))return filePath + ",文件不存在"; //读写权限--应根据实际应用场景进行设置 FileStream fileStream = new FileStream(filePath, FileMode.Open, FileAccess.ReadWrite, FileShare.ReadWrite); // 第二步 创建读写器 StreamReader sr = new StreamReader(fileStream, Encoding.Default); // 第三步:读取操作 //sr.ReadLine() 读取一行 可用 sr.EndOfStream 判断是否到了文件尾 // sr.ReadToEnd(); // 读取到最后(读取全部) result = sr.ReadToEnd(); sr.Close(); /*第四步:关闭读取器 */ fileStream.Close(); /*第五步:关闭文件流*/ } catch { return result; } return result; } } }
博客内容主要用于日常学习记录,内容比较随意,如有问题,还需谅解!!!