变量名 | 类 型 | 静态 | 数组 | 备 注 |
bin | 字节集 | | |
pass | 文本型 | | |
unzf | 整数型 | | |
info | unz_global_info | | |
i | 整数型 | | |
fileinfo | unz_file_info | | |
name | 文本型 | | |
ext | 文本型 | | |
cmt | 文本型 | | |
bin2 | 字节集 | | |
len | 整数型 | | |
文件组 | 文本型 | | 0 |
a | 整数型 | | |
清除数组 (文件组
)文件_枚举 (取运行目录 () +
“\test”,
“*.zip”, 文件组, 真, 真,
真)
计次循环首 (取数组成员数 (文件组
), a
)
调试输出 (文件组
[a
])
bin =
读入文件 (文件组
[a
])
unzf =
unzOpenBuffer (bin,
取字节集长度 (bin
))

如果 (unzf ≠ 0
)
unzGetGlobalInfo (unzf, info
)

cmt =
取空白文本 (info.size_comment + 1
)
unzGetGlobalComment (unzf, cmt,
取文本长度 (cmt
))

调试输出 (格式化文本 (“文件数量:%d,文件注释:%s”, info.number_entry, cmt
))

调试输出 ( #换行符 )

计次循环首 (info.number_entry, i
)


name =
取空白文本 (255
)


ext =
取空白文本 (255
)


cmt =
取空白文本 (255
)

unzGetCurrentFileInfo (unzf, fileinfo, name,
取文本长度 (name
),
字符 (0
), 0,
字符 (0
), 0
)


如果真 (取文本右边 (name, 4
) =
“.xml”)


调试输出 (格式化文本 (“文件(夹)-%d:%s”, i, name
))



调试输出 (格式化文本 (“包含压缩前后大小:%d/%d,crc:%X,时间:%d-%d-%d %d:%d:%d等更多信息”, fileinfo.uncompressed_size, fileinfo.compressed_size, fileinfo.crc, fileinfo.tmu_date.tm_year, fileinfo.tmu_date.tm_mon, fileinfo.tmu_date.tm_mday, fileinfo.tmu_date.tm_hour, fileinfo.tmu_date.tm_min, fileinfo.tmu_date.tm_sec
))




如果 (pass =
“”)



unzOpenCurrentFile (unzf
)



调试输出 (“-”,
unzOpenCurrentFilePassword (unzf, pass
))



bin2 = 取空白字节集 (fileinfo.uncompressed_size)



len =
unzReadCurrentFile (unzf, bin2, fileinfo.uncompressed_size
)


调试输出 (格式化文本 (“读取长度:%d,内容:”, len
), bin2,
UTF8到文本 (bin2
))




编辑框1.内容 = 编辑框1.内容 +
到文本 (len
) +
#换行符 +
UTF8到文本 (bin2
) +
#换行符 


unzCloseCurrentFile (unzf
)

unzGoToNextFile (unzf)

调试输出 ( #换行符 )

计次循环尾 ()
unzClose (unzf
)
调试输出 (“打开文件失败”)

计次循环尾 ()