linux文件学习9
来源:互联网 发布:淘宝商品如何推广 编辑:程序博客网 时间:2024/06/04 00:14
文件之间的复制
#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <stdlib.h>
#define MAX_SIZE 1024
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <stdlib.h>
#define MAX_SIZE 1024
int main(int argc,char *argv[])
{
int fd1;
int fd2;
int read_sum;
int write_sum;
char str[MAX_SIZE];
char *ptr;
if(argc != 3)
{
fprintf(stderr,"less %s fromfile tofile/n/a", argv[0]);
exit(1);
}
if((fd1 = open(argv[1], O_RDONLY)) == -1)
{
fprintf(stderr, "open %s error!/n", argv[1]);
exit(1);
}
if((fd2 = open(argv[2], O_WRONLY|O_CREAT, S_IRUSR|S_IWUSR)) == -1)
{
fprintf(stderr, "open %s error!/n", argv[2]);
exit(1);
}
{
int fd1;
int fd2;
int read_sum;
int write_sum;
char str[MAX_SIZE];
char *ptr;
if(argc != 3)
{
fprintf(stderr,"less %s fromfile tofile/n/a", argv[0]);
exit(1);
}
if((fd1 = open(argv[1], O_RDONLY)) == -1)
{
fprintf(stderr, "open %s error!/n", argv[1]);
exit(1);
}
if((fd2 = open(argv[2], O_WRONLY|O_CREAT, S_IRUSR|S_IWUSR)) == -1)
{
fprintf(stderr, "open %s error!/n", argv[2]);
exit(1);
}
while((read_sum = read(fd1, str, MAX_SIZE)) != 0)
{
printf("%d\n",read_sum);
if(read_sum == -1)
{
printf("read is error\n");
break;
}
else if(read_sum > 0)
{
ptr = str;
while((write_sum = write(fd2, ptr, read_sum)) != 0)
{
if(write_sum == -1)
{
printf("write is error\n");
break;
}
else if(read_sum == write_sum)
{
printf("success\n");
break;
}
else if(write_sum > 0)
{
ptr = ptr + write_sum;
read_sum = read_sum - write_sum;
}
}
if(write_sum == -1)
{
break;
}
}
}
close(fd1);
close(fd2);
}
{
printf("%d\n",read_sum);
if(read_sum == -1)
{
printf("read is error\n");
break;
}
else if(read_sum > 0)
{
ptr = str;
while((write_sum = write(fd2, ptr, read_sum)) != 0)
{
if(write_sum == -1)
{
printf("write is error\n");
break;
}
else if(read_sum == write_sum)
{
printf("success\n");
break;
}
else if(write_sum > 0)
{
ptr = ptr + write_sum;
read_sum = read_sum - write_sum;
}
}
if(write_sum == -1)
{
break;
}
}
}
close(fd1);
close(fd2);
}
0 0
- linux文件学习9
- linux文件权限学习
- linux ELF文件学习
- Linux ELF文件学习
- Linux ELF文件学习
- linux文件学习1
- Linux学习---文件查找
- linux 读写文件学习
- Linux学习---文件分区
- linux文件学习4
- linux文件学习5
- linux文件学习6
- linux文件学习7
- linux文件学习8
- Linux 学习(文件)
- linux学习之文件
- linux学习 文件操作
- linux文件权限学习
- Sum Problem
- 浅析互斥锁与条件变量的使用
- 打开转发IP功能(IP forwarding)
- java load property
- 传纸条 优化
- linux文件学习9
- RMQ模板题 POJ 3264
- Windows7/10 64Bit安装Theano并实现GPU加速
- 【Android 进阶:翻译】Get Started With Firebase for Android
- composer autoload原理浅析
- 基础知识
- java网络编程之TCP
- 高数常考考点总结
- Kaldi中的plda的训练以及computer-socre