使用 StreamWriter 声明新的 TextWriter 会导致“System.IO.IOException:'进程无法访问文件”

Declaring new TextWriter with StreamWriter causes "System.IO.IOException: 'The process cannot access the file"

提问人:user3312266 提问时间:12/28/2022 最后编辑:user3312266 更新时间:12/28/2022 访问量:70

问:

我有另一个进程正在使用的文件。但是,我需要能够使用 TextWriter (C# .NET) 保存到它。我能做些什么来解决这个问题?

(“进程无法访问文件错误”在新的 StreamWriter (filePathName) 上抛出)

        XmlSerializer _serializer = new XmlSerializer(typeof(T));
        using (TextWriter _writer = new StreamWriter(filePathName))
        {
            /* [Redacted - internal code] */
            _serializer.Serialize(_writer, XMLSettings);
        }

如上所述,我需要能够创建一个 TextWriter 并将该实例传递到序列化程序中。

C# 流编写器 System.io.file 文本编写器

评论

0赞 Kevin 12/28/2022
这是什么语言?
0赞 user3312266 12/28/2022
它是 C# .NET 。

答:

0赞 David Browne - Microsoft 12/28/2022 #1

我有另一个进程正在使用的文件。

然后,另一个进程负责文件是否以独占方式打开,或者其他进程是否可以读取和/或写入文件。例如,请参阅 FileStream 构造函数中的 FileShare 标志。