• 文件读写


    和文件有关系的输入输出类主要在fstream.h这个头文件中被定义,在这个头文件中主要被定义了三个类,由这三个类控制对文件的各种输入输出操作,他们分别是ifstream、ofstream、fstream,其中fstream类是由iostream类派生而来,他们之间的继承关系见下图所示:

    打开并写入文件

    • ofstream  ofs
    • open 指定打开方式
    • isopen 判断是否打开成功
    • ofs << “数据”
    • ofs.close
    #define _CRT_SECURE_NO_WARNINGS
    #include <iostream>
    using namespace std;
    #include <fstream>      //读写文件
    
    void test01()
    {
        // 打开方式1:
        //ofstream ofs("./test.txt", ios::out | ios::trunc);  //在定义文件流对象时指定参数
        //打开方式2:
        ofstream ofs2;                                      //定义ofstream类(输出文件流类)对象
        ofs2.open("./test.txt", ios::out | ios::trunc);    //使文件流与test.txt文件建立关联
        if (!ofs2.is_open())        //判断是否打开成功
        {
            cout << "打开失败" << endl;
        }
    
        ofs2 << "姓名:xxx" << endl;
        ofs2 << "年龄: 18" << endl;
        ofs2 << "性别: 男" << endl;
    }
    
    int main()
    {
        test01();
        system("Pause");
        return 0;
    }

    结果:

    读取文件

    • ifstream  ifs
    • 指定打开方式 ios::in
    • isopen判断是否打开成功
    • 三种方式读取数据
    void test02()
    {
        ifstream ifs;
        ifs.open("./test.txt", ios::in);
        //判断是否打开成功
        if (!ifs.is_open())
        {
            cout << "打开失败" << endl;
        }
        //第一种方式
        char buf[1024];
        while (ifs >> buf) //按行读取
        {
            cout << buf << endl;
        }
    }
    void test03()
    {
        //第二种方式
        ifstream ifs;
        ifs.open("./test.txt", ios::in);
        char buf[1024];
        while (!ifs.eof()) //eof  读到文件末尾
        {
            ifs.getline(buf, sizeof(buf));
            cout << buf << endl;
        }
    }
    void test04()
    {
        //第三种 不同见 按单个字符读取
        ifstream ifs;
        ifs.open("./test.txt", ios::in);
        char c;
        while ( (c = ifs.get()) != EOF) //EOF 文件末尾
        {
            cout << c;
        }
    }

    结果:

    文件读写:https://blog.csdn.net/weixin_43918046/article/details/106367507

  • 相关阅读:
    CKEditor4x word导入不保存格式的解决方案
    为了希望正式开始开发
    HTTP权威指南-URL与资源
    HTTP权威指南-HTTP概述
    同源策略和跨域访问
    普通Html文件图片上传(Storing Image To DB)
    PostgreSQL时间戳提取的特殊需求
    (转)百度前端规范、腾讯前端规范
    整理一下嵌入式WEB开发中的各种屏蔽(转)
    Excel表格指定列数据转换成文本
  • 原文地址:https://www.cnblogs.com/yifengs/p/15186028.html
Copyright © 2020-2023  润新知