把一个文件拷贝到另外一个文件,需要打开两个文件,一个读取,一个写入
2017-11-29 19:58
363 查看
#include<stdio.h> #include<unistd.h> #include<sys/stat.h> #include<fcntl.h> #include<stdlib.h> #include<strings.h> //文件IO //把一个文件拷贝到另外一个文件,需要打开两个文件,一个读取,一个写入 int main(int argc,char *argv[]) { int ret,read_fd,write_fd; char buf[BUFSIZ]; read_fd = open(argv[1],O_RDONLY); if(read_fd < 0) { perror("fail to open"); exit(1); } write_fd = open(argv[2],O_RDWR | O_CREAT | O_EXCL,0664); if(write_fd < 0) { perror("fail to write"); exit(1); } while(1) { bzero(buf,BUFSIZ); //返回读到的字节数 ret = read(read_fd,buf,BUFSIZ);//读取一个文件内容 if(ret < 0) { perror("fail to read"); exit(1); } else if(ret == 0 || strncmp(buf,"quit",4) == 0)//返回0表示已到达文件尾 break; // ssize_t write(int fd, const void *buf, size_t count); else write(STDOUT_FILENO,buf,ret);//标准输出到屏幕 write(write_fd,buf,ret);//写入到指定文件中 } close(read_fd); close(write_fd); return 0; } /***************编译过程************ $ ./a.out 23_write.c 23_test.c #include<stdio.h> #include<unistd.h> #include<sys/stat.h> #include<fcntl.h> #include<stdlib.h> #include<strings.h> //文件IO //把一个文件拷贝到另外一个文件,需要打开两个文件,一个读取,一个写入 .................... .................... ***********************************/
相关文章推荐
- python实现读取大文件并逐行写入另外一个文件
- 同时存在n个线程(n>5),需要写入或者读取一个名为test.txt的文件
- 【转帖】如何从内核模式设备驱动程序中打开一个文件以及如何读取或写入文件
- 如何从内核模式设备驱动程序中打开一个文件以及如何读取或写入文件
- 建立一个程序,写2个线程,同时对一个文件里面写入字符串,另外一个程序读取输出在控制台,保证读取的实时性。
- C语言文件的读写操作,每次读取1K,然后写入另外一个文件
- 同时存在n个线程(n>5),需要写入或者读取一个名为test.txt的文件
- 从一个文件中读取数据到内存,然后再把内存中的数据写入另外一个文件
- 同时存在n个线程(n>5),需要写入或者读取一个名为test.txt的文件
- 如何从内核模式设备驱动程序中打开一个文件以及如何读取或写入文件(来自微软官网)
- 同时存在n个线程(n>5),需要写入或者读取一个名为test.txt的文件
- 一个模式字符串,一个替换用字符串,以及两个文件名 它应该读取第一个文件, 并将内容写入第二个文件
- python读取TXT文件并逐行写入另外一个TXT文件
- 同时存在n个线程(n>5),需要写入或者读取一个名为test.txt的文件
- QT读取xml文件,然后写入另外一个新的xml文件
- java读取数据写入txt文件并将读取txt文件写入另外一个表
- python读取大文件并逐行写入另外一个文件
- 第二周第四天(解析/过滤文件/找d盘里的所有txt文件/FileInputStream/FileOutputStream/拷贝文件/readLine读取一个文本行/在一个文档里写入内容)
- 同时存在n个线程(n>5),需要写入或者读取一个名为test.txt的文件
- C语言逐行读取文件内容,写入另外一个文件