初学c/c++——提及文件操作

文件操作一般的四个操作,fopen,fclose,fwrite,fread,这四个什么意思呢?
说、学、逗。。。开玩笑,打开,关闭,写入,读出。

1)fopen与fclose

格式:
  FILE *fopen ( const char* filename , const chat* mode);
  ……  
  fclose(fopen);

解析格式:
FILE 不用在意其具体类型,只需要知道这是个指针就可以了,
filename 要是文件的全路径,
mode 有三种形式:
  “wb” write binary 写入数据,每次打开文件后,清空原有内容,不管你有没有写入新数据
  “ab” append 追加,打开后不清空,新内容追加在末尾
  “rb” read 读,读

实例:
  const char* fliename=”C:/test.txt”;
  FILE* fp=fopen(filename , “wb”);
  if(fp==NULL)
  {
    printf(“failed \n”);
    return -1;
  }
  fclose(fp);

2)fwrite

格式:
  size_t fwrite(const void* buf,size_t size, size_t count, FILE* stream);

解析格式:
buf 写入的数据
size 传1就可以了,别管
count 字节数
stream fopen的返回值

实例:
  char* buf[]=”hello”;
  fwrite( buf , 1 , 5或sizeof(buf) , fp );

3)wread

格式:
  size_t fread (void* buf ,size_t size , size_t nelem , FILE* stream);

解析格式:
读和写相似,
buf 存储到目标的内存地址
size 1
nelem 一次最多几个字节
返回值为字节个数

实例:
顺序读取:文件大,无法一次读完
  char buf[128];
  while(!feof(fp)) //检测文件是否到末尾,eof == end of file
  {
    int n = fread( buf , 1 , 4 , fp);
    if ( n > 0 )
    {
      printf(” %d bytes \n ” , n );
    }
  }

4.其他

多说一个按行解析的例子
用fgets,”rb” 下,读到”\n” 停止读取
  char buf[512];
  while(!feof(fp))
  {
    char* line = fgets(buf, 512 , fp);
    if(line)
    {
      printf(“got: %s ” , line );
    }
  }
解析情况很复杂,要自己多懂脑筋。
文件操作,是一个难点,当然了,多练习是肯定的,
我在这也只是提及文件操作这个概念,
没事多练,多看看大神的代码吧。。。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值