`
jindw
  • 浏览: 501432 次
  • 性别: Icon_minigender_1
  • 来自: 初到北京
社区版块
存档分类
最新评论

一个要让Java程序员抓狂的JS Zip压缩程序。

阅读更多
试过Java 生成Zip文件的同学,想必痛苦的编码问题应该记忆犹新吧。

由于现在通行的解压软件都是基于本地编码的,而Java Zip工具却是超前的使用了UTF-8。
而且非常干脆的断了自己的后路,相关的方法都是native的方法,无法自行扩展。也就是说,中国的程序员就别想用好那个超前的JavaZip的。

这几天在网上收集了一些资料,用JavaScript写了一个支持GBK编码的Zip制作程序。
支持中文文件名和内容,也支持添加图片等二进制文件(没有测试,或许吧)

http://jsicdn.appspot.com/example/zip.html

可以支持非IE浏览器。IE8未测试(IE8开始也能支持data协议了),也许可以。
最终输出是base64编码,data协议下载。

自从IE8支持了data协议,我想以后使用data协议开发一些二进制文件操作的程序会多起来了。
速度也越来越快了,也能生成,操作二进制文件。
那么JavaScript到底可以作些什么呢?没有做不到的,只有想不到的,一起去发挥他的潜力吧。
分享到:
评论
5 楼 jindw 2009-06-09  
yiminghe 写道
02221021 写道
强大,见过一篇文章讲压缩原理的.跟看天书一般.不过你的网站似乎打不开.


信息论里好像说最简单的方法是  统计字频重新编码,次数越多的字编码越短


传说中古老的hoffman 编码?

不过现在流行的压缩算法一般都是lz77那个系列的,流式压缩,实现简单。运算成本也低。

更具他的原理,自己改造一下,也能用来压缩js代码,虽然意义不大。
http://hi.baidu.com/jindw/blog/item/737b7c8181b4fcd0bd3e1eef.html
4 楼 yiminghe 2009-06-08  
02221021 写道
强大,见过一篇文章讲压缩原理的.跟看天书一般.不过你的网站似乎打不开.


信息论里好像说最简单的方法是  统计字频重新编码,次数越多的字编码越短
3 楼 jindw 2009-06-08  
基于这个zip库编写的整站图片打包下载小程序。

javascript:var app='http://jsicdn.appspot.com/example/pack.js';var s = document.createElement("script");s.src=app;void(document.body.appendChild(s))



将上面的代码贴到地址栏中,程序将自动将网站的图片资源打成zip包下载下来。
2 楼 jindw 2009-06-08  
哪估计是你们那边墙太高了,呵呵。
用的是GoogleAppEngine的服务。

关于压缩算法,我是拿了一断别人的程序改的,也不是我的原创。

唯一能算我自己写的就是那个GBK编码的程序。
我只是吧三段程序(GBK编码,Zip生成,zip_deflate)略家修改,组合了一下。

想查看源代码的同学,可以进入CDN管理界面,开启调试模式:
http://jsicdn.appspot.com/admin.xhtml
1 楼 02221021 2009-06-08  
强大,见过一篇文章讲压缩原理的.跟看天书一般.不过你的网站似乎打不开.

相关推荐

Global site tag (gtag.js) - Google Analytics