记得初中的时候用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语言自制文件分割器(简单)相关推荐

  1. java 文件分割器_Java分割器

    java 文件分割器 Java Spliterator is one of the four iterators – Enumeration, Iterator, ListIterator and S ...

  2. 用C++写一个文件分割器

    在成功将 mac 由 10.10 升级到 10.12 后,我发现除了新增一个并不怎么好用的 Siri 外,原来支持 NTFS 硬盘的驱动居然也成功失效了.我那块 500 GB 的东芝硬盘,虽不至于成砖 ...

  3. 袖珍文件分割器 免费

    Welcome to my blog! <script language="javascript" src="http://avss.b15.cnwg.cn/cou ...

  4. 文件分割器(filesplit) v2.01 免费

    Welcome to my blog! <script language="javascript" src="http://avss.b15.cnwg.cn/cou ...

  5. Windows Practice_文件_文件分割器(二)

    文件分割器实现时注意的几点 分割文件的头信息结构体的设计,如果里面需要存储字符串的信息,我们必须使用字符串数组来存储,而不能使用类似于CString.string等字符串对象来存储,因为使用这些对象在 ...

  6. 文件分割器,一个读取流,相应多个输出流,并且生成的碎片文件都有有序的编号...

    import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import ja ...

  7. VC 写 TXT 文件分割器 附代码

    TXT文件分割器主要将很大的TXT文档分割成预定大小的文档 主要通过cfile类来实现 这就是最后的效果. 选择路径主要通过cfiledlg类来实现 // TODO: Add your control ...

  8. java日志切割工具_JavaSwing版本的日志文件分割器

    JavaSwing版本的日志文件分割器 功能: 分割比100M还大的日志为多个100M的左右的小日志 上效果图 使用方法 点击打开按钮 打开一个log文件,然后点击切割按钮 直接上代码 package ...

  9. java文件分割器_JAVA学习课第五 — IO流程(九)文件分割器合成器

    文件分割器 private static final int SIZE = 1024 *1024; public static void splitFile(File file) throws IOE ...

最新文章

  1. 一文带你彻底了解Java异步
  2. MS SQL的存储过程
  3. 大数据与智能算法(二-应用级技术)-SMU在线学习笔记
  4. C++对C的加强之 “实用性”增加
  5. mysql rand() 子查询_MySQL ------ 子查询(十三)
  6. 镜像配置见证机失败解决方案
  7. Hive分析hadoop进程日志
  8. android webkit js脚本注入(js内部对象由java层构建)
  9. Java使用for循环打印菱形
  10. excel根据数据得出公式
  11. java源代码怎么用_java源码怎么使用?java源代码用什么打开!
  12. 关于QTTabBar的使用
  13. 放大电路分析方法、图解法分析放大电路、lceda仿真
  14. 愤怒的导数:一点可导和邻域内可导能推出来什么?
  15. Codeforces--760B--Frodo and pillows
  16. JointJS:可与Visio相媲美的开源在线制图工具
  17. Android应用中保存网络图片功能实现详解
  18. 【if语句与表达式】
  19. 有关积分的不等式证明
  20. 百度地图 JavaScript API

热门文章

  1. opencv实现两个视频拼接显示
  2. 一个靠谱的国外maven镜像地址
  3. RK3399Pro 入门教程(一)ubuntu18.04系统安装
  4. c4d怎么导入fbx_如何将3DMAX模型带材质导入C4D
  5. Dictionary入门
  6. 【SSL1762】工厂的烦恼【floyed最长路】
  7. Android ANR分析-笔记
  8. 软件测试周刊(第40期):大部分的恐惧与懒惰有关
  9. web前端--音乐魔方旋转相册笔记(1)
  10. 校招面试常考算法题总结