C语言自制文件分割器(简单)
记得初中的时候用MP3看电子书,MP3支持的文本文档格式不能超过1M,否则打不开,然后在网上下了一个文件分割器,感觉真的很强大啊(别吐槽,当时真的很白)。
等自己学了C语言后,便想自己弄一个文件分割器,可是在网上搜了一下源码,看起来很复杂的样子,也就没了兴趣。现在又重新拾起了这个愿望,不过第一次弄的比较简单,没有重命名等功能,以后还会重新附加功能的。
有什么不足的,欢迎拍砖。
闲话少叙,直接上源代码。
/* copy the file1 into 2 file --------* file2 && file3* And then print file2 && file3*/#include <stdio.h>
#include <stdlib.h>int main(void)
{FILE *fp1 ,*fp2,*fp3;int ch;int row_count = 0; //count the rowsif ( (fp1 = fopen ("file1","r+")) == NULL) {perror ("open file file1\n");exit(1);}if ( ( fp2 = fopen ("file2", "w+")) == NULL) {perror ("open file file2\n");exit(1);}if ( ( fp3 = fopen ("file3", "w+")) == NULL) {perror ("open file file3\n");exit(1);}//count the row of the filewhile ((ch = fgetc (fp1)) != EOF ){if (ch == '\n') row_count++;}rewind(fp1);//copy file1 into two files----file2 && file3while ((ch = fgetc (fp1)) != EOF){static int copy_row_count = 0;if (ch == '\n') copy_row_count++;if (copy_row_count <= row_count/2) {fputc (ch, fp2); continue;}if (copy_row_count > row_count/2) {fputc (ch, fp3); continue;}}rewind(fp1);rewind(fp2);rewind(fp3);printf("#########\nfile1:\n#########\n");while ((ch = fgetc(fp1)) != EOF )putchar(ch);printf("#########\nfile2:\n#########\n");while ((ch = fgetc(fp2)) != EOF )putchar(ch);printf("#########\nfile3:\n#########\n");while ((ch = fgetc(fp3)) != EOF )putchar(ch);fclose(fp1);fclose(fp2);fclose(fp3);return 0;
}
欢迎大家指正批评!!
C语言自制文件分割器(简单)相关推荐
- java 文件分割器_Java分割器
java 文件分割器 Java Spliterator is one of the four iterators – Enumeration, Iterator, ListIterator and S ...
- 用C++写一个文件分割器
在成功将 mac 由 10.10 升级到 10.12 后,我发现除了新增一个并不怎么好用的 Siri 外,原来支持 NTFS 硬盘的驱动居然也成功失效了.我那块 500 GB 的东芝硬盘,虽不至于成砖 ...
- 袖珍文件分割器 免费
Welcome to my blog! <script language="javascript" src="http://avss.b15.cnwg.cn/cou ...
- 文件分割器(filesplit) v2.01 免费
Welcome to my blog! <script language="javascript" src="http://avss.b15.cnwg.cn/cou ...
- Windows Practice_文件_文件分割器(二)
文件分割器实现时注意的几点 分割文件的头信息结构体的设计,如果里面需要存储字符串的信息,我们必须使用字符串数组来存储,而不能使用类似于CString.string等字符串对象来存储,因为使用这些对象在 ...
- 文件分割器,一个读取流,相应多个输出流,并且生成的碎片文件都有有序的编号...
import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import ja ...
- VC 写 TXT 文件分割器 附代码
TXT文件分割器主要将很大的TXT文档分割成预定大小的文档 主要通过cfile类来实现 这就是最后的效果. 选择路径主要通过cfiledlg类来实现 // TODO: Add your control ...
- java日志切割工具_JavaSwing版本的日志文件分割器
JavaSwing版本的日志文件分割器 功能: 分割比100M还大的日志为多个100M的左右的小日志 上效果图 使用方法 点击打开按钮 打开一个log文件,然后点击切割按钮 直接上代码 package ...
- java文件分割器_JAVA学习课第五 — IO流程(九)文件分割器合成器
文件分割器 private static final int SIZE = 1024 *1024; public static void splitFile(File file) throws IOE ...
最新文章
- 一文带你彻底了解Java异步
- MS SQL的存储过程
- 大数据与智能算法(二-应用级技术)-SMU在线学习笔记
- C++对C的加强之 “实用性”增加
- mysql rand() 子查询_MySQL ------ 子查询(十三)
- 镜像配置见证机失败解决方案
- Hive分析hadoop进程日志
- android webkit js脚本注入(js内部对象由java层构建)
- Java使用for循环打印菱形
- excel根据数据得出公式
- java源代码怎么用_java源码怎么使用?java源代码用什么打开!
- 关于QTTabBar的使用
- 放大电路分析方法、图解法分析放大电路、lceda仿真
- 愤怒的导数:一点可导和邻域内可导能推出来什么?
- Codeforces--760B--Frodo and pillows
- JointJS:可与Visio相媲美的开源在线制图工具
- Android应用中保存网络图片功能实现详解
- 【if语句与表达式】
- 有关积分的不等式证明
- 百度地图 JavaScript API