zoukankan      html  css  js  c++  java
  • C++文件操作方法小结

    - 获取文件句柄

      - fopen, fclose

        fopen(filename, opentype): 按照opentype的方式打开指定文件,打开失败返回NULL,否则返回文件句柄。

          打开类型的属性(属性可以相互组合):   

           字符                含义
        ────────────────────────────

    r(read):     读

    w(write):       写

    a(append):    追加

    t(text):     文本文件,可省略不写

    b(banary):    二进制文件

    +:        读和写

        ━━━━━━━━━━━━━━━━━━━━━━━━━━━━

        fclose(fp):关闭指定文件, 关闭成功返回0,否则返回非零数

    - 读写文件

      - fgets ,fputs: 字符串读写(字符)

        fgets(str, n, FILE* fp):从fp中读一个字符串到str字符数组中,其中n表示从文件中读取出字符串的长度(会自动在最后一个字符上加上结束标志)

          1. 在第n-1个字符之前读取到' '或者EOF,结束读入

          2. 读入成功返回,字符数组首地址

        fputs(str, fp):把str写入到fp文件中

      - fread, fwrite: 数据块读写(数字变量,结构体)

        fread(buffer,size,count,fp):从fp中读取每次读取size个字节,读取count次,全部存入buffer指针所指的地址中(buffer表示存储数据的首地址指针)

        fwrite(buffer,size,count,fp): 从buffer中每次取size个字节,读取count,全部写入fp中

      - fscanf, fprintf:格式化读写

        fscanf(fp,”%d%s”,&i,s), fprintf(fp,”%d%c”,j,ch):与scanf, printf相似,只不过读写对象不是键盘和显示器,而是磁盘与文件


      - rewind, fseek:随机读写

        随机读写与上面的顺序读写不同的在于,文件指针可以移动到指定的位置,从而获取文件中某一部分数据。

        rewind(fp):移动文件内部指针到文件首部

        fseek(fp, (long)size, start_locate):表示把fp文件内部指针从start_locate开始移动size个字节(size一般是long类型,常数的话要在后面加L)

          start_locate:有三种类型 文件首部-->SEEK—SET-->0,文件当前位置-->SEEK—CUR-->1,文件末尾-->SEEK—END-->2

          fseek一般用于二进制文件,否则可能会计算错误,所以打开文件的时候可以以二进制的方式打开

  • 相关阅读:
    JS的(new Date()).toLocaleString,系统设置为24小时,仍然显示为12小时。
    js中获取时间new date()的用法
    Warning: require(): open_basedir restriction in effect. 宝塔错误
    未定义数组下标: 0
    layui 弹层组件文档
    TP5模版中的运算符
    tp5倒计时还有几天几时几分
    【原创】tp5软件过期提醒
    a标签的title属性 换行
    电子签章盖章之jQuery插件jquery.zsign
  • 原文地址:https://www.cnblogs.com/alihenaixiao/p/6429312.html
Copyright © 2011-2022 走看看