加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

用c语言把一个文件的内容复制到另一个文件中

(2012-06-08 10:47:40)
标签:

文件的复制

c

linux

i/o操作

it

分类: linux高级编程


#include <unistd.h>
#include <sys/types.h>
#include<sys/stat.h>
#include<fcntl.h>
#include<stdlib.h>
#include<stdio.h>

#define BUFFER_SIZE 1024
#define SRC_FILE_NAME "src_file"
#define DEST_FILE_NAME "dest_file"
#define OFFSET 10240

int main()
{
    int src_file,dest_file;
    unsigned char buff[BUFFER_SIZE];
    int real_read_len;
    
    src_file=open(SRC_FILE_NAME,O_RDONLY);//以只读方式打开源文件
    dest_file=open(DEST_FILE_NAME,O_WRONLY|O_CREAT,S_IRUSR|S_IWUSR|S_IRGRP|S_IROTH);//以只读方式打开目标文件,如此文件不存在创建该文件,权限为644
    if(src_file<0||dest_file<0)
    {
        printf("Open file error\n");
        exit(1);
    }
    lseek(src_file,-OFFSET,SEEK_END);//OFFSET为每一次读写操作光标移动的距离
    while((real_read_len=read(src_file,buff,sizeof(buff)))>0)//read函数返回每次读出的字节数
        write(dest_file,buff,real_read_len);

    close(dest_file);
    close(src_file);
    return 0;
}



 #include <stdio.h>

void main()
{
    printf("aaa");
}

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有