zoukankan      html  css  js  c++  java
  • fopen()使用

    fopen()使用

    描述

    C库函数 FILE* fopen(const char *filename, const char *mode)使用给定的模式mode打开filename所指向的文件。

    模式:

    模式 描述
    "r" 打开一个用于读取的文件。该文件必须存在。
    "w" 创建一个用于写入的空文件。如果文件名称与已存在的文件相同,则会删除已有文件的内容,文件被视为一个新的空文件。
    "a" 追加到一个文件。写操作向文件末尾追加数据。如果文件不存在,则创建文件。
    "r+" 打开一个用于更新的文件,可读取也可写入。该文件必须存在。
    "w+" 创建一个用于读写的空文件。
    "a+" 打开一个用于读取和追加的文件。

    返回值

    该函数返回一个FILE指针,否则返回NULL,且设置全局变量errno来标识错误。

    读写操作示例:

    ///判断文件是否存在
    bool isFileExists_stat(string& name) {
        struct stat buffer;
        return (stat(name.c_str(), &buffer) == 0);
    }
    ///写内容
    void Write(const char* content)
    {
        char* filename = new char[50];
        strcpy(filename, "D:\w.txt");
        string strFilename(filename);
        bool b = isFileExists_stat(strFilename);
        FILE* f = nullptr;
        if (b)
        {
            f = fopen(filename, "a");
        }
        else
        {
            f = fopen(filename, "w");
        }
        fprintf(f, "%s", content);
        fclose(f);
    }
    ///读内容
    void Read()
    {
        char* filename = new char[50];
        strcpy(filename, "D:\w.txt");
        string strFilename(filename);
        bool b = isFileExists_stat(strFilename);
        FILE* f = nullptr;
        if (b)
        {
            f = fopen(filename, "r");
            while (1)
            {
                int c = fgetc(f);
                if (feof(f))
                {
                    break;
                }
                printf("%c", c);
            }
            fclose(f);
        }
    }
    

    最近项目需要用到C++,需要重新捡起,爷青回-

  • 相关阅读:
    ios实现下拉刷新,上拉加载
    ios实现瀑布流
    ios收货地址三级联动选择
    ios仿淘宝管理收货地址demo
    引用传值
    继承小结
    is操作符和as操作符
    抽象类和object类
    重写基类
    派生
  • 原文地址:https://www.cnblogs.com/zzr-stdio/p/14241777.html
Copyright © 2011-2022 走看看