• 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一般用于二进制文件,否则可能会计算错误,所以打开文件的时候可以以二进制的方式打开

  • 相关阅读:
    SQL Server 2005 中的同义词
    SQL SERVER 2005中同义词实例
    聚集索引和非聚集索引(整理)
    linux kernel中timer的使用
    linux命令: patch
    win7(64位)php5.5-Apache2.4-mysql5.6环境安装
    tasklet和工作队列
    linux串口编程(c)
    Notepad++中Windows,Unix,Mac三种格式
    centos7/redhat7 将网卡名字改成eth样式的方法
  • 原文地址:https://www.cnblogs.com/alihenaixiao/p/6429312.html
Copyright © 2020-2023  润新知