微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

我想使用 ofstream 写入文件,但它什么也没给我

如何解决我想使用 ofstream 写入文件,但它什么也没给我

我用 _mkdir() 创建了三个目录,我想在最后一个创建一个文本文件,但它什么也没给我。

代码如下:

#include "stdafx.h"
#include <direct.h>
#include <fstream>
#include <iostream>
#include <string>
using namespace std;
    
int _tmain(int argc,_TCHAR* argv[])
{
    int t;
    string path,subpath;
    path = "D:";
    subpath = "d";
    for (int i = 0; i < 3; i++)
    {
        path = path + "\\" + subpath;
        t=_mkdir(path.c_str());
        if (t)
            cout << "create directory\n";
        else
            cout << "unable to create directory\n";
    }
    fstream file;
    file.open("filetest.txt",ios::out||ios::in);
    file << "haha";
    cin.get();
    return 0;
}

解决方法

您在工作目录而不是上次创建的目录中创建一个文件。 替换

file.open("filetest.txt",ios::out||ios::in);

path = path + "\\filetest.txt";
file.open(path.c_str(),ios::out|ios::in);

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。