首页 > 解决方案 > ifstream 不允许重命名文件

问题描述

我正在创建一个更类似于 file tailer 的 c++ 应用程序。我正在阅读正在编写的日志。我正在使用 ifstream 来读取文件。我有另一个过程来编写示例日志(供我阅读),当日志文件达到特定大小时,我正在重命名文件并继续写入文件。但是 ifstream 不允许我在读取文件时重命名它。errno 为 13(权限被拒绝)。当另一个进程试图对其进行重命名时,是否有任何方法可以停止 ifstream,或者是否有任何替代 ifstream 允许重命名文件的方法。注意:我不想更改日志编写器,因为我将阅读第三方日志。

标签: c++filefopenifstream

解决方案


推荐阅读