gal*_*tte 2 c c++ file std
我想用标准库打开一个文件进行写入,但如果文件已经存在,则打开的文件应该会失败.
从我在文档中可以阅读的内容来看,ofstream :: open只允许追加或截断.
我当然可以尝试打开以进行读取以检查文件是否存在,如果不存在则重新打开以进行写入,但不能保证文件不会被其他进程创建.
有人可以确认这在使用标准库(std :: iostream)或C函数(FILE*函数)的C++中是不可能的
Pio*_*ycz 6
由于C11(因而也是在C++ 17),用于fopen可使用模式"x"-独占模式,看到这个:
fopen
"x"
文件访问模式标志"x"可以可选地附加到"w"或"w +"说明符.如果文件存在,此标志会强制函数失败,而不是覆盖它.
归档时间:
9 年,8 月 前
查看次数:
1201 次
最近记录:
8 年,8 月 前