如何创建一个正常的密码
我的应用程序将zip文件压缩成多个文件,将zip文件保存到SD卡,然后通过电子邮件将zip文件发送到一个地址。
使用此代码完成压缩:使用Android压缩文件(以编程方式)。
现在的问题是,如何在zip文件上输入密码,以便在计算机上打开它的授权用户(Windows,Mac或Ubuntu)能够使用提供的密码提取文件?
我阅读这篇文章:Android zip文件认证,但听起来我的读取zip是用另一个电话完成的......或者我错了吗? 如果有人知道,请让我知道! 谢谢!
因为Android有一个JVM,所以你可以尝试使用你看到的所有的Java库(有些可以运行,有些可以运行,有些库的某些改变也可以)。
这样我就会复制这个问题的答案(用Java编写一个受密码保护的Zip文件):
经过多次搜索,我发现了三种方法:
一套免费的源代码,适用于单个文件zip。 但是,没有许可证。 用法是AesZipOutputStream.zipAndEcrypt(...)。 http://merkert.de/de/info/zipaes/src.zip(https://forums.oracle.com/forums/thread.jspa?threadID=1526137)
更新:此代码现在获得Apache许可,并在http://code.google.com/p/winzipaes/上发布。 它为我工作(zip中的一个文件),并且很好地填充了Java的开源库中的一个漏洞。
商业产品(写作时500美元)。 我无法验证它是否有效,因为他们的试用许可方法非常复杂。 它也是一个移植的.NET应用程序:http://www.nsoftware.com/ipworks/zip/default.aspx
商业产品(写作时290美元)。 仅适用于Wnidows,因为它使用dll:http://www.example-code.com/java/zip.asp
您还必须知道,将它们适配到Android可能并不容易,但也许您很幸运,其中一些会立即为您运行 。
祝你好运!
我搜索了很多,最终找到了一个很好的库,可以轻松地用密码压缩文件:
压缩:
ZipArchive zipArchive = new ZipArchive();
zipArchive.zip(targetPath,destinationPath,password);
解压缩:
ZipArchive zipArchive = new ZipArchive();
zipArchive.unzip(targetPath,destinationPath,password);
RAR:
RarArchive rarArchive = new RarArchive();
rarArchive.extractArchive(file archive, file destination);
这个库的文档足够好,我只是从那里添加了几个例子。 这是完全免费的,专门为android写的。
链接地址: http://www.djcxy.com/p/9785.html