如何使用ofstream打开文件,以便其他用户可以附加/写入同一文件

How to open file with ofstream so that other users can append/write to same file?

本文关键字:文件 其他 ofstream 何使用 用户      更新时间:2023-10-16

我们有一个二进制文件,它创建一个每日CSV report,其中包含一些文件名,例如Sample_20170523即文件名附加了当前日期,但现在的问题是当其他人在同一天运行二进制文件时,则出现无法打开文件的错误。此问题的代码片段如下所示:

std::ofstream of;
of.open("FileName_20170523",ios::out);
if(!of)
  std::cout<<"Unable to open file..."<<std::endl;

因此,检查后似乎会出现此问题,因为该文件已由其他用户创建。所以只是想知道 c++ 中是否有任何机制可以授予 777 对以编程方式创建的文件的权限?

您可以使用

chmod()fchmod()来更改文件的权限。

system(( 允许执行系统命令。

system("chmod 777 diretory_to_file/name");

如果 R+W+X 已经退出,则将其提供给所有人

std::ofstream of;
of.open("FileName_20170523",ios::out);