当前位置: 首页 > news >正文

大型网站建设招商2022年最火文案

大型网站建设招商,2022年最火文案,徐州做网站优化,首饰设计网站推荐继上次实现文件从后往前数2k的数据进行复制,此次要求是文件的一半且是后半部分。 即复制源文件sour_file的后半部分到dest_file 除了数据上从后2K变化到后一半之外,其他的几乎没有什么变化。 这道题的关键点就在于后一半怎么求,在经历了用 …

继上次实现文件从后往前数2k的数据进行复制,此次要求是文件的一半且是后半部分。

即复制源文件sour_file的后半部分到dest_file

除了数据上从后2K变化到后一半之外,其他的几乎没有什么变化。

这道题的关键点就在于后一半怎么求,在经历了用 lseek(writed,0,SEEK_SET)求文件总长,用sizeof()函数求文件大小,strlen()函数求字符串长度等等等等N次尝试之后,意外发现了一种能达到效果且好用的方法:Struct stat 结构体。

如上图所示,struct stat 结构体内容是不需要自己写的,这算是自带属性。

这样一来就简单多了。

struct stat st;
//先把这个结构体拽出来
fstat(writed,&st);
//fstat函数的作用就是把得到的文件writed的属性给到结构体
int len=st.st_size;
//再调用得到其大小

如此就完整得到了源文件的大小。

我们只要后半部分,于是先取其一半

int filesize=len/2;lseek(writed,filesize,SEEK_END);
//将光标从后往前移到文件二分之一处

或者从前往后移动二分之一也可以

lseek(writed,filesize,SEEK_SET);

然后从当前位置读取内容,写到目标文件就可以了

源码:

#include<stdio.h>
#include<stdlib.h>
#include<unistd.h>
#include<sys/types.h>
#include<sys/stat.h>
#include<fcntl.h>
#include<string.h>
int main(int argc,char *argv[])
{int writed; int readed;int writed_len;int readed_len;int len_lseek;struct stat st;if(argc!=3){printf("Input invaild\n");return -1;}writed=open(argv[1],O_RDONLY);\\只读打开if(writed<=0){printf("Open Source File '%s' Failure",argv[1]);return -1;}readed=open(argv[2],O_WRONLY|O_CREAT|O_TRUNC,0664);if(readed<=0){printf("Create Destination File '%s' Failure",argv[2]);return -1;}fstat(writed,&st);//将writed文件属性全部复制到结构体len_lseek=st.st_size; //利用stat结构体求得文件大小char buf[1024];lseek(writed,-len_lseek/2,SEEK_END);//将光标移动到文件1/2位置int count=0;while((readed_len=read(writed,buf,sizeof(buf)))!=0) //从源文件读取数据,直到全部读完{writed_len=write(readed,buf,readed_len);//将读取的内容写入到目标文件if(writed_len>0){printf("拷贝完成%d次\n",count+1);}if(writed_len<0){printf("Write Destination File '%s' Failure",argv[2]);}count++;}printf("The File has been copied and Executed %d times\n", count);close(writed);close(readed);
}

网上随便复制了一段,放在了源文件里。

运行结果:

差不多是一半,我也没数,有强迫症可以数一数ヽ(゚∀゚)メ(゚∀゚)ノ ヾ(๑╹◡╹)ノ"ヾ(●´∀`●) 

http://www.yayakq.cn/news/238902/

相关文章:

  • 98元建网站网站制作软件下载
  • 深圳网上招聘最好的网站做理财网站 程序员 违法吗
  • WordPress不会php抖音seo软件工具
  • 荥阳网站开发网站建设phpstudy
  • 做网站 怎么做留言wordpress 阅后即焚
  • 品牌网站建设有什么作用山西响应式网站建设制作
  • 主机搭建网站教程商城小程序哪家好
  • 上海大 小企业网站制作怎么做兼职类网站
  • wordpress 免费商业主题seo怎么做整站排名
  • 公司网站设计收费手机怎么登pc端智慧团建
  • discuz网站编码苏州建设网站的公司
  • 永登县建设局网站做的比较好看的网站
  • 物流三方网站怎么做网站建设销售求职
  • 网站 内容企业用什么邮箱比较好
  • 鹤壁建设网站网页设计师证书报考条件
  • 安徽工程建设官方网站京山大洪山旅游开发有限公司 做网站
  • 金种子酒业网站建设抖音seo关键词优化
  • 公司做网站一定要钱吗网站后台密码是什么
  • 网站jquery在线优化大型的网站建设公司
  • 网站建设的法律依据帆软社区app
  • 网站顶部广告素材品牌推广公司如何推广
  • 专业做公司宣传网站的建网站现软件
  • 企业网站源码 一品资源网文化产业协会网站源码
  • 教育培训网站模板下载在南宁做家教兼职的网站
  • 广东哪里有网站建设杭州软件开发定制公司
  • 网站关键词排名怎么做风险网站怎么解决方案
  • 网站建设对接模版抖音开放平台登录入口官网
  • 网站营销方法网站 带数据
  • 猪八戒做网站要多少钱个人网站怎么做打赏
  • wordpress wp footer怎么来自己做网站优化