zoukankan      html  css  js  c++  java
  • c++ 读写二进制文件

    学内容: 

    打开二进制文件

    写二进制文件

    读二进制文件

     

     

    一、打开二进制文件

        FILE *fopen( const char *filename, const char *mode );

        filename是要操作的文件名。 

    mode

    说明

    "wb"

    打开一个二进制文件,进行写入操作。如果文件不存在,则会建立一个新文件存在则清空内容。

    "ab"

    打开一个二进制文件,进行追加操作。如果文件不存在,则会建立一个新文件存在则追加内容。

    "rb"

    打开一个二进制文件,进行读取操作。

     

    二、写二进制文件

       size_t fwrite( const void *buffer, size_t size, size_t count, FILE *stream );

    //count*size 是要写入文件的字节数

     buffer是缓冲区指针

     stream是文件指针(或者流指针)

    三、读二进制文件

       size_t fread( void *buffer, size_t size, size_t count, FILE *stream );

    //count*size 是要读取的字节数

    buffer是缓冲区指针

    stream是文件指针(或者流指针)

    int main(void)
    {   
        //未重定向的代码
        char num[256];
        FILE *f;
        stu_data stu10[10]={0};
        int i;
        time_t t1;
        struct tm * tm1;
        f=fopen("test.txt","rb");
         //fprintf(f,"ddddd");
         if (f==NULL) //if (!f)
         {
             //fprintf(stderr,"文件打开出错或者是文件不存在 
    ");//stdout
             perror("test.txt");
         }
         ////获取数据并写入文件
         //for (i=0;i<10;i++)
         //{
            // scanf("%s",&stu10[i].name );
            // time(&t1);
            // tm1=localtime(&t1);
            // //记录签到时间//记录学生 姓名和签到时间
            // stu10[i].stuTime.hour=tm1->tm_hour;
            //  stu10[i].stuTime.min=tm1->tm_min;
            //   stu10[i].stuTime.sec=tm1->tm_sec;
         //}
         ////写入到二进制文件里
         //fwrite(stu10,sizeof(stu_data),10,f);
         //读取二进制文件数据至stu10缓冲区
         fread(stu10,sizeof(stu_data),10,f);
         //显示数据
         for (i=0;i<10;i++)
         {
             printf("name=%s  ",stu10[i].name);
             printf("时间:%d-%d-%d 
    ",stu10[i].stuTime.hour,stu10[i].stuTime.min,stu10[i].stuTime.sec);
         }
         fclose(f);
        getchar();
        getchar();
        return 0;
    }
  • 相关阅读:
    《Thinking In C#》
    在图片上写字
    在设计期跟踪代码
    VS2003下的重构工具ReSharp
    监视剪贴板的变化
    一次重构导向设计模式的实践
    JENA学习的零散笔记
    jena处理Owl
    Maven库中.lastUpdated文件自动清除工具
    WEB数据挖掘(六)——Aperture数据抽取(2)
  • 原文地址:https://www.cnblogs.com/whzym111/p/6149894.html
Copyright © 2011-2022 走看看