使用方法: tripDir.exe 需要打包的文件夹名 打包文件名$ [/ G+ `0 d7 f
如果不给第三个参数, 默认会打包在 ".\\zipPack.z"0 j" A' k6 K# G
6 c! g3 \, ^; g' K1 i
压缩包里面包括了bzip2的可执行程序。另外有个测试文件夹tst2, 包括子目录, 中文文件名等等。" L3 h% A# E3 C* B) Y5 c4 {5 f S
测试脚本: tripDir.exe .\\tst27 n2 d, \6 Z' A/ ^6 Y- U3 o
6 M. ?9 u" ~) A' D4 |: ?
源码里面加了很多注释, 各位可以看看, 有什么不decent的地方欢迎拍砖:D
4 V! u# u* `; S6 W% X---------------------------------------) P! T8 _$ n1 B, ?8 A
终于搞定了...这事情拖了好久, 找原因的话一个是自己windows系统编程方面不熟, 另外就是办事太拖拉了。
2 r4 s$ d/ I: L- t3 [* g, G" ~" U$ X
主要是两个问题比较费时间:
3 H0 C8 P! ~/ k2 S: x$ i1. 原来解压缩的问题, 是因为我用的quickbms是0.2.X的版本, 回头下了一个最新版本的就ok了
; G% m4 q: N$ J7 h# ?$ l5 X2. 就是windows系统下目录遍历的问题, 之前读写文件都是用c语言的函数的, 又是翻书上网查了一阵, 那些命名还有就是wchar/char的问题搞得有点晕。有个需要注意的地方就是这个脚本的目录和文件的打包规则不同——目录的路径是完全的, 而文件只有文件名没有目录, 之前的目录路径用的是一个上一级访问得到的目录名。带来的问题就是在打包一个文件夹时, 要先打包下面的文件, 在打包下面的子目录。因为如果交错打包子文件和子目录的话, 文件前面的路径就乱掉了 |