C语言学习笔记---一个简单的文件压缩示例
通过一个简单的文件文件压缩例子,来学习文件操作的相关函数。该程序以只读的方式 “r” 打开第一个文件,以只写的方式“w”打开第二个文件。将第一个文件中每隔3个字符取出一个字符存储在第二个文件中。第二个文件的文件名是第一个文件名后面加上 .red 后缀。
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <math.h>#define LEN 10
int main()
{int ch;FILE *in,*out;char name[LEN];int count = 0;//打开文件1 if((in = fopen("file1.txt","r") )==NULL) { //读模式打开文件1 fprintf(stderr,"open error!\r\n"); //若文件打开失败,输出错误提示exit(EXIT_FAILURE);}//设置输出strncpy(name,"file1",LEN-5); //拷贝文件名,存储在name数组中name[LEN - 5]='\0';strcat(name,".red"); //在文件名后添加 .redif((out = fopen(name,"w") )==NULL) { //写模式打开文件2 fprintf(stderr,"can not cread out file! \r\n");}//拷贝数据while( (ch = getc(in)) != EOF){if(count++ %3 ==0) //每隔3个字符存储一次putc(ch,out);} //收尾工作if( fclose(in) != 0 || fclose(out) != 0) //关闭打开的两个文件{fprintf(stderr,"Error in closing files! \r\n");} system("pause");return 0;
}
在文件1中输入以下内容:
程序执行完成之后,就会生成一个新的文件。文件名和第一个文件一样,但是后缀变成了.red。
用记事本打开两个文件,对比里面的内容。
通过内容对比可以看出,文件2中的内容是文件1中每隔3个字符取一个组成的。相当于把一个文件的大小压缩成原来的1/3.
C语言学习笔记---一个简单的文件压缩示例相关推荐
- codesys工程ST语言学习笔记(五)打开压缩文件projectarchive失败,指定的工程不能被加载
codesys解压文件projectarchive失败 不会编译程序或者建立工程的点击第一篇文章codesys工程ST语言学习笔记(一)建立工程与编译 不会编译程序或者建立工程的点击第一篇文章code ...
- web学习笔记——一个简单的HTML
为了更好的做web安全测试,最近开始学习web相关知识.先从最简单的一个html页面开始: <!DOCTYPE html> <html><head><titl ...
- [基因课学习笔记]一个简单的基因家族分析
工作背景 探究在芝麻.大豆以及拟南芥中FAD4-like基因家族进化关系,并使其可视化(进化树) 操作环境及软件的准备 虚拟机应用:VMware Workstation pro 17 虚拟机操作系统: ...
- Go语言学习笔记(十八)之文件读写
25.文件读写 1.文件打开和读 A.文件分类:文本和二进制文件 B.文件存取方式:随机存取和顺序存取 文件打开代码示例: 1: package main 2: 3: import ( 4: &quo ...
- C语言学习笔记(二): 简单的C程序设计
数据的表现形式 常量 在C语言中常量有以下几种: 整型常量: 0,-1,100 实型常量: 小数形式(12.12):指数形式(12.1e3= 12.1 × 1 0 3 12.1\times 10^3 ...
- R语言学习笔记【简单语法总结-上】
简单语法总结[上]: R语言特征总览: 对大小写敏感 通常,数字,字母,. 和 _都是允许的(在一些国家还包括重音字母).不过,一个命名必须以 . 或者字母开头,并且如果以 . 开头,第二个字符不允许 ...
- C++ STL 一个简单的文件输入输出示例
//本程序实例简单介绍C++如何读写文件 #include <iostream> #include <fstream> #include <string> usin ...
- Nodejs学习(5)一个简单的koa2的示例
基本使用 1.下载koa2 npm install --save koa@2.0.0 2.引入koa类 const Koa = require('koa'); 创建Koa的实例 const app = ...
- 10-1Python学习笔记 10-2C语言学习笔记 : 在文本编辑器中新建一个文件, 写几句话来总结一下你至此学到的Python知识
10-1 Python学习笔记 : 在文本编辑器中新建一个文件, 写几句话来总结一下你至此学到的Python知识, 其中每一行都以"In Python you can"打头. 将这 ...
最新文章
- AWS 日本出现大规模故障
- C++Primer Plus (第六版)阅读笔记 + 源码分析【第三章:处理数据】
- 无效0_12位浙江高考生成绩被教育考试院判定无效,0分收场的原因很可惜
- JavaScript——易班优课YOOC课群在线测试禁止右键和复制解决方案
- SAP Spartacus 读取payment detail数据的API
- python运行结果图_[宜配屋]听图阁
- html风车相册代码,Css Html 大风车(示例代码)
- 苹果 M1 “痛失” Windows 11!
- 配置hadoop集群
- ci php做多图上传,CodeIgniter快速实现图片上传
- php中计算时间差的几种方法,php计算时间差的方法
- X3D 参数代码(一)
- php支持的协议与封装协议
- eviews计算covar_covariance(eviews做协整检验步骤)
- Linux命令--wget
- 浏览器中的data类型的Url格式,data:image/png,data:image/jpeg!
- RT_Thread_事件集
- 公司给股票期权,我买还是不买?
- 开发工程师的人生是这样的
- 诺贝尔物理学奖变身“理综”奖:乍看颁给全球变暖研究,其实背后通用理论模型影响机器学习...