c# – 重复/同时读取/写入文本文件
发布时间:2020-12-16 01:37:03 所属栏目:百科 来源:网络整理
导读:如何读取和写入文本文件而不会得到“文件已被其他应用程序使用”的异常? 我尝试了File.readalltext()和File.Appendalltext()函数.我刚开始使用filestream. 在我的场景中哪种效果最好?我也会感谢一些代码snipplets .. 谢谢 解决方法 这与打开文件时请求的锁
如何读取和写入文本文件而不会得到“文件已被其他应用程序使用”的异常?
我尝试了File.readalltext()和File.Appendalltext()函数.我刚开始使用filestream. 在我的场景中哪种效果最好?我也会感谢一些代码snipplets .. 谢谢 解决方法
这与打开文件时请求的锁定和共享语义有关.
而不是使用File.ReadAllText()的快捷方法,尝试使用System.IO.FileStream和System.IO.StreamReader / System.IO.StreamWriter. 要打开文件: using (var fileStream = new FileStream(@"c:myFile",FileMode.Open,FileAccess.Read,FileShare.ReadWrite)) using (var streamReader = new StreamReader(fileStream)) { var someText = streamReader.ReadToEnd(); } 注意FileShare.ReadWrite – 这告诉流允许与其他读者或其他作者共享. 写作尝试类似的东西 using (var fileStream = new FileStream(@"c:myFile",FileMode.Create,FileAccess.Write,FileShare.Read)) using (var streamWriter = new StreamWriter(fileStream)) { streamWriter.WriteLine("some text"); } 注意FileShare.Read – 这告诉流只允许向读者共享. 阅读System.IO.FileStream及其构造函数重载,您可以准确地定制它的行为以适合您的目的. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |