从源文件中读出最后10KB内容到目的文件中
2019獨角獸企業(yè)重金招聘Python工程師標準>>>
#include <stdio.h>
#include <string.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <stdlib.h>
#include <unistd.h>
#define BUFFSIZE 1024
#define offset 10240
int main(int argc,char *argv[])
{
?char buf[BUFFSIZE];
?int src_file,dest_file,real_read_num;
?
?/* check the input */
?if(argc != 3)
?{
??fprintf(stderr,"Usage:./copy_file source_file_name dest_file_name.\n");
??exit(1);
?}
?
?/* open source file for read only*/
?src_file = open(argv[1],O_RDONLY);
?/* open destination file only for write,if the file is not exist,then creat and access mode is 0644 */
?dest_file = open(argv[2],O_WRONLY | O_CREAT,S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH);
?
?/* check open operation is success or not */
?if(src_file < 0 || dest_file < 0)
?{
??perror("open");
??exit(2);
?}
?/* reposition the file pointer to the specified location */
?lseek(src_file,-offset,SEEK_END);
?/* read source file's content and write it to destination file */
?while((real_read_num = read(src_file,buf,BUFFSIZE)) > 0)
?{
??if(write(dest_file,buf,real_read_num) < 0)
??{
???perror("write");
???exit(3);
??}
?}
?close(src_file);
?close(dest_file);
?return 0;
}
?
?
轉載于:https://my.oschina.net/tanyouliang/blog/29750
《新程序員》:云原生和全面數(shù)字化實踐50位技術專家共同創(chuàng)作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的从源文件中读出最后10KB内容到目的文件中的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Win32基础知识5 - Win32汇编
- 下一篇: 统一沟通成本节约数据表