zoukankan      html  css  js  c++  java
  • Unity3D研究院之LZMA压缩文件与解压文件

    原地址:http://www.xuanyusong.com/archives/3095

    前两天有朋友告诉我Unity的Assetbundle是LZMA压缩的,刚好今天有时间那么就研究研究LZMA。它是一个开源的类库,有C、 C++、C#、JAVA的类库,那么在我大Unity里面我们当然要使用C#的类库啦。

    下载地址:http://www.7-zip.org/sdk.html  或者在文章的最后下载我的测试工程、如下图所示,因为9.22是Beta版本,所以我们还是老老实实下载9.20正式版本。

    Unity3D研究院之LZMA压缩文件与解压文件 - 雨松MOMO程序研究院 - 1

    解压后把整个CS文件夹拖入Unity工程即可。当我在拖入Unity的时候发现Settings.cs报错了,查了一下是因为mono并不是完整的.net 。不过这个文件我们不需要用,所以直接把Settings.cs删除即可。

    Unity3D研究院之LZMA压缩文件与解压文件 - 雨松MOMO程序研究院 - 2

    下面上代码,这是编辑时的一个类。我先把根目录下的一个文件压缩,接着在解压缩。

    我参考了这篇文章,不过它点问题,所以我改了改。

     http://stackoverflow.com/questions/7646328/how-to-use-the-7z-sdk-to-compress-and-decompress-a-file

    如下图所示,我把1.jpg先压缩成2.zip ,然后在把2.zip在解压成3.jpg。

    Unity3D研究院之LZMA压缩文件与解压文件 - 雨松MOMO程序研究院 - 3

    下载地址:http://pan.baidu.com/s/1dDBxyBv

    如果你想运行时运行LZMA按照上述代码简单改改就可以使用了。比如你把压缩过的文件放在服务器,然后用www下载到内存以后,可以通过lzma的解压方法将文件还原在保存在本地。 欢迎大家一起讨论与学习。嘿嘿,或者有什么更好的压缩方式,欢迎在下面给我留言,谢谢。

  • 相关阅读:
    后台菜单权限设计实现思路
    Laravel创建模型到指定目录
    laravel框架加载静态资源注意事项
    mysql 快速生成测试数据小技巧
    Lavaral基础实践——文件上传报错
    PHP常量详解:define和const的区别
    开发常用的工具网站
    windows下用navicat远程链接虚拟机Linux下MySQL数据库(测试可行)
    java异常处理机制思路总结
    记录一些比较容易含糊的概念
  • 原文地址:https://www.cnblogs.com/123ing/p/3915308.html
Copyright © 2011-2022 走看看