文件下载
#include<stdio.h>
#include<string.h>
int main(int argc, const char *argv[])
{
//打开两个文件
FILE *src_fp=fopen("./src_file1","r+");
FILE *dest_fp=fopen("./dest_file1","w+");
if(src_fp==NULL||dest_fp==NULL)
{
printf("file not find\n");
return -1;
}
//从源文件按字节逐个读取,写入到目标文件中
int ch;
while((ch=fgetc(src_fp))!=EOF)
{
fputc(ch,dest_fp);
}
//关闭两个文件
fclose(src_fp);
fclose(dest_fp);
printf("download success\n");
return 0;
}
计算文件字节,和行数
#include<stdio.h>
int main(int argc, const char *argv[])
{
//定义计数变量
int bytecount=0,line=0;
int last_char=-1;
//打开文件
FILE *fp=fopen("./src_file2","r+");
if(fp==NULL)
{
printf("file open error");
return -1;
}
//逐个字节计算字节数,遇见\n则计算行数,末尾可能没有换行符,再补加
int ch;
while((ch=fgetc(fp))!=EOF)
{
bytecount++;
if(ch=='\n')
line++;
last_char=ch;//确保最后一个字符,不是EOF
}
//补算加
if(bytecount>0&&last_char!='\n')
line++;
//输出统计结果
printf("字节:%d个字节\n行数:%d行\n",bytecount,line);
//关闭文件
fclose(fp);
return 0;
}