gpt4 book ai didi

c++ - 为什么在fopen中使用 'r+'模式时文件必须存在?

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:52:10 25 4
gpt4 key购买 nike

当您打算同时读取文件和向文件写入数据时,为什么要添加此约束?

我的应用程序想要以读取和写入模式打开文件。如果我使用 w+ 它将破坏文件的先前竞争,但同时如果文件不存在它会创建该文件。

但是,如果我使用r+ 模式,我的应用程序将正常工作,但如果文件不存在,它将抛出文件不存在的异常。

最佳答案

尝试这样的事情。如果第一个 fopen 因为文件不存在而失败,第二个 fopen 将尝试创建它。如果第二次 fopen 失败,则存在严重问题。

if((fp = fopen("filename","r+")) == NULL) {
if((fp = fopen("filename","w+")) == NULL) {
return 1;
}
}

关于c++ - 为什么在fopen中使用 'r+'模式时文件必须存在?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26512927/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com