Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ C++/fstream:无法创建新文件_C++_File_Fstream - Fatal编程技术网

C++ C++/fstream:无法创建新文件

C++ C++/fstream:无法创建新文件,c++,file,fstream,C++,File,Fstream,由于某些原因,以下代码无法创建新文件,即,如果该文件已存在,它将覆盖该文件,否则它将不执行任何操作: #include <fstream> int main() { std::fstream fs("test_out.log"); // <-- does not create a new file! //std::fstream fs("test_out.log", std::ios_base::in | std::ios_base::out); // <

由于某些原因,以下代码无法创建新文件,即,如果该文件已存在,它将覆盖该文件,否则它将不执行任何操作:

#include <fstream>

int main()
{
    std::fstream fs("test_out.log"); // <-- does not create a new file!
    //std::fstream fs("test_out.log", std::ios_base::in | std::ios_base::out); // <-- does not create a new file!

    fs << "TEST" << std::endl;
}
#包括
int main()
{

std::fstream fs(“test_out.log”);//如果要创建一个要写入的新文件:

std::ofstream fs("test_out.log");
做好这项工作


如果在
中使用
std::ios\u base::in
文件必须存在

最后,您应该编写fs.close()@Android400:手动关闭没有意义。
fs
对象在离开main作用域时被销毁后,文件在fs被销毁时被关闭。是的,在本例中,手动关闭没有意义,但在其他用法中它不是无用的。@Android400在其他情况下,其他代码实现其他事情是有意义的,对吗这是不是?java?C++是不是Java。析构函数<代码> fStase关闭对象。为什么<代码> STD::FSLOW FS(“TestOxout log”,STD::IOSKASEAS:::在STD::IOSKBASE:::OUT)创建文件失败?@GilsonPJ:如果使用
std::ios_base::in
文件必须存在。谢谢。如果没有
in
它正在创建文件,这是否意味着如果我想在(ios_base::in | ios_base::out)模式下打开文件,我最好首先执行:{ofstream fs(“test out.log”,ios_base::app)}以保证文件存在?