C语言学习之日志文件备份程序

同学:在吗,会写VBS或JS脚本吗

我:要什么内容的

正当我诧异,为何同学有如此一问,要实现什么功能时,他倒挺懂得,立马做了一个需求doc文档发我。

需求如下:

1、把同一天的日志移到一个文件夹,比如,文件名包含170801的都移到170801文件夹。

2、把这些文件夹压缩打包

3、把压缩包上传到FTP服务器

4、删除原文件和文件夹

初看一下需求,以我现在的C语言知识,还挺有难度的。后面再次沟通,原来是局域网备份,我去,搞的这么逼格,废话不多说一步步来实现吧。

C语言学习之日志文件备份程序_第1张图片
日志文件夹截图


C语言学习之日志文件备份程序_第2张图片
引入头文件


试了一下,做教程不容易,非常感谢上写教程的大师,让我有幸可以学习不少知识。还是直接贴出代码吧。基本都有注释,可以查看。

思路:

1.循环读取文件夹里所有的文件,并拷贝到另一目录下;

2.取文件的170801,作为子文件夹,如果没有则创建,否则跳过;

   这里主要是找了两个函数,先right取文件名右边开始的10个字符,再取左边开始的6个字符,即可。

3.由于程序编译后不好修改,所以后面又想加个txt文件,存放参数;

实现:a.自定义要拷贝的文件侠与扩展名;b.要备份到某路径;c.多久重新执行一次程序;

logBakConfig.txt配置文件内容:
D:\\logs\\
D:\\logs\\*.log
E:\\日志bak\\
60

4.备份后删除原文件,做一些界面提示信息;

通过修改调试,基本功能已经达到需求,只是没有打包功能。配置


C语言学习之日志文件备份程序_第3张图片
代码1


C语言学习之日志文件备份程序_第4张图片
代码2


C语言学习之日志文件备份程序_第5张图片
代码3


C语言学习之日志文件备份程序_第6张图片
代码4


C语言学习之日志文件备份程序_第7张图片
代码5


C语言学习之日志文件备份程序_第8张图片
代码6


C语言学习之日志文件备份程序_第9张图片
代码7

你可能感兴趣的:(C语言学习之日志文件备份程序)