易语言文件夹压缩加密:小于4GB自动分卷,安全便捷
' 创建压缩包的最大大小(以字节为单位) maxSize = 4 * 1024 * 1024 * 1024
' 源文件夹路径 sourceFolder = 'C:\Path\To\Source\Folder'
' 压缩包保存路径 zipFilePath = 'C:\Path\To\Save\ZipFile.zip'
' 加密密码 password = 'YourPassword'
' 压缩文件夹为zip格式 shell '7z a -tzip -p' + password + ' -mx9 ''' + zipFilePath + ''' ''' + sourceFolder + ''', 0, 1
' 获取压缩后的文件大小 zipFileSize = filelen(zipFilePath)
' 如果压缩包大小超过maxSize,则进行分卷压缩 if zipFileSize > maxSize then ' 计算分卷压缩的数量 volumeCount = ceil(zipFileSize / maxSize)
' 分卷压缩
for i = 1 to volumeCount
' 当前分卷文件的保存路径
volumeFilePath = zipFilePath + '.' + str(i)
' 计算当前分卷的起始和终止位置
startOffset = (i - 1) * maxSize
endOffset = i * maxSize - 1
if endOffset > zipFileSize then
endOffset = zipFileSize - 1
end if
' 提取指定位置的数据到分卷文件
shell '7z e -p' + password + ' -so ''' + zipFilePath + ''' > ''' + volumeFilePath + ''', 0, 1
' 更新分卷文件的大小
volumeFileSize = filelen(volumeFilePath)
if volumeFileSize <> (endOffset - startOffset + 1) then
' 分卷文件大小与预期不符,删除该分卷文件
kill(volumeFilePath)
exit for
end if
next i
' 删除原始压缩包
kill(zipFilePath)
else ' 压缩包大小符合要求,不需要进行分卷 end if
' 完成压缩和分卷后,可以将生成的可执行文件与分卷文件一起传输或进行其他操作 ' 解压时,只需运行生成的可执行文件并输入密码即可解压全部分卷文件
' 请将上述代码保存为一个易语言源代码文件(例如compress_folder.yl),然后使用易语言编译器将其编译为可执行文件(例如compress_folder.exe)。生成的可执行文件可以在不同的系统上运行,输入密码后即可解压压缩包。
' 请注意,上述代码使用了7-Zip命令行工具进行压缩和解压缩操作,因此系统中需要安装7-Zip软件,并将其路径添加到系统环境变量中。此外,为了保护数据安全,请确保选择一个安全且强密码进行加密。
原文地址: https://www.cveoy.top/t/topic/OjW 著作权归作者所有。请勿转载和采集!