码迷,mamicode.com
首页 > 编程语言 > 详细

c语言文件操作——复制文件

时间:2015-03-08 10:25:04      阅读:191      评论:0      收藏:0      [点我收藏+]

标签:

//用于拷贝文件
#include <stdio.h>
#include<stdlib.h>
#include <string.h>

int main()
{
    FILE *fp_from=NULL;            //定义文件指针
    FILE *fp_to=NULL;
    int len;                            //获取文件长度
    char *ch=NULL;            //缓存buffer

    if ((fp_from=fopen("from.txt","w+"))==NULL)        //打开源文件,注意这句话中的括号,“==”的右边要用括号括起来
    {
        printf("open from file error!\n");
        exit(0);
    }
    else
    {
        printf("open from file successfully! prepare to write...\n");
    }

    fwrite("hello",1,strlen("hello"),fp_from);                //将一个字符串写入源文件中
    printf("write successfully!\n\n");
    fflush(fp_from);                                        //刷新文件

    if ((fp_to=fopen("to.txt","w+"))==NULL)                //打开目标文件
    {
        printf("open write file error!");
        exit(0);
    }
    else
    {
        printf("open write file successfully!\n");
    }

    len=ftell(fp_from);                //获取源文件长度
    ch=(char *)malloc(sizeof(char *)*(len));                //动态分配数组长度
    memset(ch,0,len);                            //清零,否则无法将内容写入!!!

    rewind(fp_from);                            //将源文件指针复位到开头,否则写入为空!
    fread(ch,1,len,fp_from);                //将源文件内容写到buffer中
    
    fwrite(ch,1,len,fp_to);                    //将buffer中的内容写回到目标文件中

    printf("copy successfully!\n");        
    fclose(fp_from);                            //关闭文件
    fclose(fp_to);

    return 0;

}

c语言文件操作——复制文件

标签:

原文地址:http://www.cnblogs.com/weekman/p/4321327.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!