使用方法: tripDir.exe 需要打包的文件夹名 打包文件名" X: M% [4 p6 H6 L' o; F! y
如果不给第三个参数, 默认会打包在 ".\\zipPack.z"
$ x( m6 r5 O9 M R+ @' V7 b2 @ }; Y; ?! Z" k$ c$ }
压缩包里面包括了bzip2的可执行程序。另外有个测试文件夹tst2, 包括子目录, 中文文件名等等。' w: H/ ?% L2 v. ]/ k |. X, J
测试脚本: tripDir.exe .\\tst2
! E6 r- J( W$ I% [( l
) r7 o6 M6 H8 d6 X! L源码里面加了很多注释, 各位可以看看, 有什么不decent的地方欢迎拍砖:D9 r* {9 W1 Q% N/ u
---------------------------------------1 o3 n( ]* y' k0 B8 s7 A
终于搞定了...这事情拖了好久, 找原因的话一个是自己windows系统编程方面不熟, 另外就是办事太拖拉了。
# e% a+ B2 o3 X) |4 x' Z# k# E6 m- }7 M% [9 R
主要是两个问题比较费时间:
9 F7 X9 D$ J' a$ D: C! V: b' h; Z1. 原来解压缩的问题, 是因为我用的quickbms是0.2.X的版本, 回头下了一个最新版本的就ok了4 q. B9 b% \) \, N% s7 o
2. 就是windows系统下目录遍历的问题, 之前读写文件都是用c语言的函数的, 又是翻书上网查了一阵, 那些命名还有就是wchar/char的问题搞得有点晕。有个需要注意的地方就是这个脚本的目录和文件的打包规则不同——目录的路径是完全的, 而文件只有文件名没有目录, 之前的目录路径用的是一个上一级访问得到的目录名。带来的问题就是在打包一个文件夹时, 要先打包下面的文件, 在打包下面的子目录。因为如果交错打包子文件和子目录的话, 文件前面的路径就乱掉了 |