处理其他应用程序访问的文件
尝试访问当前正在由另一个应用程序写入的文件通常会导致“访问被拒绝”错误。 本指南演示了使用 VB.NET 和 C# 处理这种情况的解决方案。
VB.NET 和 C# 都提供了通过共享访问打开文件的方法。 通过使用FileShare.ReadWrite
,多个程序可以同时访问同一个文件。
实现方法如下:
VB.NET 示例:
<code class="language-vb.net">Using logFileStream = New FileStream("c:\test.txt", FileMode.Open, FileAccess.Read, FileShare.ReadWrite) Using logFileReader = New StreamReader(logFileStream) While Not logFileReader.EndOfStream Dim line As String = logFileReader.ReadLine() ' Process each line of the file here End While End Using End Using</code>
C# 示例:
<code class="language-csharp">// Open the file with shared read/write access using (FileStream logFileStream = new FileStream("c:\test.txt", FileMode.Open, FileAccess.Read, FileShare.ReadWrite)) using (StreamReader logFileReader = new StreamReader(logFileStream)) { // Read and process the file while (!logFileReader.EndOfStream) { string line = logFileReader.ReadLine(); // Process each line of the file here } }</code>
using
语句(或 try-finally
块)对于确保正确的资源清理和文件句柄的释放至关重要。 这可以防止潜在的冲突并确保有效的资源管理。
以上是如何在 VB.NET 和 C# 中访问另一个进程正在使用的文件?的详细内容。更多信息请关注PHP中文网其他相关文章!