c# – 重复同时读取写入文本文件

c# – 重复同时读取写入文本文件,第1张

概述如何读取写入文本文件而不会得到“文件已被其他应用程序使用”的异常? 我尝试了File.readalltext()和File.Appendalltext()函数.我刚开始使用filestream. 在我的场景中哪种效果最好?我也会感谢一些代码snipplets .. 谢谢 这与打开文件时请求的锁定和共享语义有关. 而不是使用File.ReadAllText()的快捷方法,尝试使用System.IO 如何读取和写入文本文件而不会得到“文件已被其他应用程序使用”的异常?

我尝试了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及其构造函数重载,您可以准确地定制它的行为以适合您的目的.

总结

以上是内存溢出为你收集整理的c# – 重复/同时读取/写入文本文件全部内容,希望文章能够帮你解决c# – 重复/同时读取/写入文本文件所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/langs/1216103.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-05
下一篇2022-06-05

发表评论

登录后才能评论

评论列表(0条)

    保存