国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

(Laya項目)JS/TS語言zip壓縮解壓縮三方庫及其使用

SQC / 1973人閱讀

摘要:語言的項目里,要用對壓縮過的文件解壓縮。壓縮二進制數據解壓二進制數據好了。中可以直接保存對象到文件,但不行,所以構造成成通用的格式,壓縮后保存。保存的配置文件叫,以的形式加載,然后再把字符串轉成即可。

TS語言的Laya項目里,要用typescript對壓縮過的文件解壓縮。文件是AS3寫的工具導出的。
怎么辦,上github找一個庫,地址如下
https://github.com/imaya/zlib.js

下載找到的zlib.js或zlib.min.js文件
自己編寫zlib.min.d.ts文件,代碼如下

export namespace Zlib {
    class Inflate {
        constructor(data:any);
        decompress(): any;
     }
     
    class Deflate { 
        constructor(data:any);
        compress():any;
    }
}

把zlib.min.js和zlib.min.d.ts文件放到項目里
這種工具性質的代碼,最好寫成上下文無關的靜態類方法。

export class ByteUtil
{
     * 壓縮 二進制數據
     * @param bytes 
     * @returns Array. or Uint8Array
     */
    public static compress(bytes:Laya.Byte):any
    {
        var byte8 = new Uint8Array(bytes.buffer);
        var defate = new Zlib.Deflate(byte8);
        var compressed = defate.compress();
        return compressed;
    }

    /**
     * 解壓 二進制數據
     * @param compressed  Array. or Uint8Array
     */
    public static uncompress(compressed: any): Laya.Byte
    {
        var inflate = new Zlib.Inflate(compressed);
        var plain = inflate.decompress();

        var plainByte: Laya.Byte = new Laya.Byte(plain);
        return plainByte;
    }
}

好了。AS3中可以直接保存Object對象到文件,但js、ts不行,所以構造成成通用的JSON格式,壓縮后保存。
保存的配置文件叫joeng.data,以Laya.Loader.BUFFER的形式加載,

        let configData:Laya.Byte = new Laya.Byte();
        configData.writeArrayBuffer(Laya.Loader.getRes("res/pre/joeng.data"));
        let configUint8Array = new Uint8Array(configData.buffer);
        configData = ByteUtil.uncompress(configUint8Array);
        configData.pos = 0;
        let configStr:string = configData.getUTFBytes();

然后再把字符串configStr轉成object即可。

本文參考自https://blog.csdn.net/sjt2238...

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/103558.html

相關文章

  • 資深程序員:Python中你不知道的那些小工具

    摘要:中還有大量的小工具,讓你的工作更有效率。快速共享服務器是內置的服務器,使用端口和協議共享。安裝解壓縮常用操作是著名的包管理工具,在開發中必不可少。安裝示例最后介紹的示一個強大的工具。 ...

    RdouTyping 評論0 收藏0
  • 使用Google Closure Compiler進行Js代碼壓縮

    摘要:是什么是一個使下載和運行更快的工具。它解析您的,分析它,刪除死代碼并重寫并最小化剩下的內容。它還檢查語法,變量引用和類型,并警告常見的陷阱。其他參數這里使用默認運行后就可以看到生成了壓縮的文件了。其他的代碼壓縮工具 1.Google Closure Compiler是什么? The Closure Compiler is a tool for making JavaScript dow...

    young.li 評論0 收藏0
  • 使用Gradle構建Java項目

    摘要:要從頭開始,請繼續使用構建。文件夾應包含項目運行單元測試的報告。由于該項目尚未進行任何單元測試,因此該報告無效。使用構建項目是啟動構建的首選方式。現在可用于構建項目。概要恭喜您現在已經創建了一個簡單而有效的構建文件,用于構建項目。 本指南將引導您使用Gradle構建一個簡單的Java項目。 你要構建什么 您將創建一個簡單的應用程序,然后使用Gradle構建它。 你需要什么 大約15分...

    xiaokai 評論0 收藏0

發表評論

0條評論

SQC

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<