首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

C语言学习12.文件和IO(4)

C语言学习12.文件和IO(4)

小结:

fopen("路径","打开方式") 打开文件
fclose(FLIE *) 关闭文件,防止之后被误用
fgetc(FLIE ) 从文件中读取一个字符
fputc(ch,FLIE) 把ch代表的字符写入这个文件里
fgets(FLIE*) 从文件中读取一行
fputs(FLIE *) 把一行写入文件
fprinrtf(FILE ,"格式字符串",输出表列) 把数据写入文件
fscanff(FILE ,"格式字符串",输入表列)从文件中读取
fwrite(地址,sizeof(),n,FLIE) 把地址中n个sizeof 大的数据写入文件里
fread(地址,sizeof(),n,FLIE) 把文件中n个sizeof 大的数据读到地址里
rwind(FLIE*) 把文件指针拨回文件头
feek(FLIE *,x, 0/1/2) 移动文件指针,0代表从头移,1代表从当前位置移,2代表从文件尾移
feof(FILE *) 判断是否到了文件末尾

    #include <stdio.h>
     
    FILE *stream, *stream1, *stream2;
     
    int main()
    {
        int numclosed;
     
        char list[30];              // 存放从文件中读取的数据
        int  i, numread, numwritten;    // 读取的数目,写入的数目
     
        // 打开文件data进行读,如果文件不存在,则失败
        if( (stream1  = fopen( "data", "r" )) == NULL )
            printf( "打开文件'data'进行读失败\n" );
        else
            printf( "打开文件'data'进行读\n" );
     
        // 打开文件data2进行写
        if( (stream2 = fopen( "data2", "w+" )) == NULL )
            printf( "打开文件'data2'进行写失败\n" );
        else
            printf( "打开文件'data2'进行写\n" );
     
        // 使用文本模式打开文件,对文件进行写操作
        if( (stream = fopen( "fread.out", "w+t" )) != NULL )
        {
            // 向文件流中写入25个字符
            for ( i = 0; i < 25; i++ )
                list[i] = (char)('z' - i);
     
            numwritten = fwrite( list, sizeof( char ), 25, stream );
            printf( "写入 %d 个字符\n", numwritten );
            fclose( stream );
        }
        else
            printf( "打开文件fread.out时,发生错误,无法写数据到文件中\n" );
     
        if( (stream = fopen( "fread.out", "r+t" )) != NULL )
        {   
            // 从文件中读取25个字符      
            numread = fread( list, sizeof( char ), 25, stream );
            printf( "读取的数据个数 = %d\n", numread );
            printf( "读取的内容为 = %.25s\n", list );
            fclose( stream );
        }
        else
            printf( "打开文件fread.out时,发生错误,无法从文件中读取数据\n" );
     
        // 关闭文件
        if( fclose( stream2 ) )
            printf( "关闭文件'data2'失败\n" );
     
        // 关闭其他打开的文件
        numclosed = fcloseall( );
        printf( "使用函数fcloseall关闭的文件数目为 : %u\n", numclosed );
        return 0;
    }
返回列表