美文网首页
文件——字符形式输入输出

文件——字符形式输入输出

作者: pangdong | 来源:发表于2018-07-14 09:11 被阅读0次

    基本知识

    使用文件方式:

    文件使用方式 含义 如果指定的文件不存在
    “r”(只读) 打开一个已存在的文本文件,从中读 出错
    “w”(只写) 打开一个文本文件,向里写 建立新文件
    “a”(追加 ) 向文本文件尾部添加数据 写 出错
    “rb”(只读) 打开一个已存在的二进制文件,从中读 出错
    “wb”(只写) 打开一个二进制文件,向里写 建立新文件
    “ab”(追加) 向二进制尾部添加数据 写 出错
    “r+”“w+”“a+” 打开一个文本文件,进行读写 出错、新建、出错
    “rb +”“wb+”“ab+” 打开一个二进制文件,进行读写 出错、新建、出错

    以字符形式对文件输入输出

    函数

    函数名 调用形式 功能 返回值
    fgetc fgetc(fp) 从fp指向的文件读入一个字符 读成功,返回所读字符;失败,返回文件结束标志(EOF)即-1
    fputc fputc(ch,fp) 将字符ch写到fp指向的文件 写成功,返回输出的字符;失败,则返回文件结束标志(EOF)即-1

    实例

    将一个文件中的信息复制到另一个文件中(利用字符一个一个读取文件信息)。

    /*
        Name: file_copy_char 
        Author:Liweidong
        Date: 13/07/18 06:39
        Description: 将一个磁盘文件中的信息复制到另一个磁盘文件中。
        利用字符一个一个读取文件信息。 
    */
    #include <stdio.h>
    #include <stdlib.h>
    
    void main() {
        FILE *fp_read,*fp_write;
        char ch,fir_name[40],sec_name[40];
    
        printf("请输入被复制的文件名:");
        scanf("%s",fir_name);
        printf("请输入新的文件名:");
        scanf("%s",sec_name);
    
        if( !(fp_read = fopen(fir_name,"r"))) {
            printf("Cannot open the file %s !",fir_name);
            return ;
        }
        if( !(fp_write = fopen(sec_name,"w"))) {
            printf("Cannot open the file %s !",sec_name);
            return ;
        }
    
        while( !(feof(fp_read))) {
            ch = fgetc(fp_fir);
            putchar(ch);
            fputc(ch,fp_write);
        }
        printf("Copy complete!\n");
    
        fclose(fp_fir);
        fclose(fp_sec);
        system("pause");
    }
    

    分析

    见后续篇章 《文件——二进制 块读写》

    传送门:

    文件:字符串输入输出
    文件:二进制 块读写
    文件:随机读写

    相关文章

      网友评论

          本文标题:文件——字符形式输入输出

          本文链接:https://www.haomeiwen.com/subject/szqspftx.html