HarmonyOS 如何解压GZIP压缩过的字符串

HarmonyOS如何解压GZIP压缩过的字符串?

压缩过的字符串:

H4sIAB3OemUA/6WTX27UMBDG7+InEFt3Zuyxx/u2IoiCtPwRq/JAeQgQICJqVmFbgVBv1BNwHg7CxIlKUpYWqX5yPJPPM7/P8+aHWZ1/Kqpqa5YOYGGO6q+75+dV15TbVVeVZqlnT9t3494Sp7zAB0ccxF9Fnz3u44BDPDFTCozhT8LLs7KpP9bVh6zjRp2EQAlDzGlFuavM0pwc9pt7GCQguwD9egACcP/k0OTEo/asy9dBgKwjQiQgFEKOb75vVYgXZl1+G5tjbWRdnw5f5GlhXjTt7qrHTbsrm3njllRs05WnhTLRfyAmZ10azoYKnI0+RS0vJE+6BZU9Xj96UmgXr1ZFrhxEaz6uPtfvm+ph2Wn75tfPS/QHfbyPvW67L8MVXiyki8XEk9sdQRiJe3CJHfPckX34D3A/7Yjg4Ubajoa7hBAlwIy2m9Cesob/II04Jc3MVuKUs2Y4lr4yLZC9I3R3Ao1ivZuB1tdqMakIeY8eAvEt5NGKDCxYzRdhd20UcCgKUJ8FYkDaZwXaOKp4Ah9D+pc1InjjIASfZaJOjKBqpYkzOJ0DmHqDnGbuXO+pp/C3XzOzfKTUz/PULrGsbelzcZEwkZO7ueU4WaGLt78B44BLBq0EAAA=
HarmonyOS
1天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
fox280

可使用三方库pako来实现gzip,参考考链接:

https://gitee.com/openharmony-tpc/openharmony_tpc_samples/tree/master/pakoDemo

示例参考:

ohpm install pako
ohpm install @types/pako
import pako from 'pako';
import util from '@ohos.util';

@Entry
@Component
struct Index {
  @State message: string = 'Hello World';

  build() {
    Row() {
      Column() {
        Button("click")
          .onClick(() => {
            // 测试用数据
            const data =
              'H4sIAB3OemUA/6WTX27UMBDG7+InEFt3Zuyxx/u2IoiCtPwRq/JAeQgQICJqVmFbgVBv1BNwHg7CxIlKUpYWqX5yPJPPM7/P8+aHWZ1/Kqpqa5YOYGGO6q+75+dV15TbVVeVZqlnT9t3494Sp7zAB0ccxF9Fnz3u44BDPDFTCozhT8LLs7KpP9bVh6zjRp2EQAlDzGlFuavM0pwc9pt7GCQguwD9egACcP/k0OTEo/asy9dBgKwjQiQgFEKOb75vVYgXZl1+G5tjbWRdnw5f5GlhXjTt7qrHTbsrm3njllRs05WnhTLRfyAmZ10azoYKnI0+RS0vJE+6BZU9Xj96UmgXr1ZFrhxEaz6uPtfvm+ph2Wn75tfPS/QHfbyPvW67L8MVXiyki8XEk9sdQRiJe3CJHfPckX34D3A/7Yjg4Ubajoa7hBAlwIy2m9Cesob/II04Jc3MVuKUs2Y4lr4yLZC9I3R3Ao1ivZuB1tdqMakIeY8eAvEt5NGKDCxYzRdhd20UcCgKUJ8FYkDaZwXaOKp4Ah9D+pc1InjjIASfZaJOjKBqpYkzOJ0DmHqDnGbuXO+pp/C3XzOzfKTUz/PULrGsbelzcZEwkZO7ueU4WaGLt78B44BLBq0EAAA='
            // 将原始数据转换为Uint8Array类型
            let textEncoder = new util.TextEncoder();
            const uint8Array: Uint8Array = textEncoder.encodeInto(data)
            console.log("testTag-" + uint8Array);
            // 使用pako进行gzip压缩
            const compressed: Uint8Array = pako.gzip(uint8Array);
            console.log("testTag-" + compressed);
            // 将压缩后的数据转换为Base64字符串
            let base64 = new util.Base64Helper();
            const base64String: string = base64.encodeToStringSync(compressed, util.Type.BASIC).toString();
          })
      }
      .height('100%')
    }
  }
}
分享
微博
QQ
微信
回复
1天前
相关问题
HarmonyOS gzip压缩解压缩接口
601浏览 • 1回复 待解决
HarmonyOS 如何解析json字符串
590浏览 • 1回复 待解决
HarmonyOS 如何解压gzip格式文件?
28浏览 • 1回复 待解决
如何解析JSON字符串
1277浏览 • 1回复 待解决
如何压缩字符串,有人知道吗?
812浏览 • 1回复 待解决
HarmonyOS gzip二进制流压缩解压缩
855浏览 • 1回复 待解决
如何解压有密码压缩
1793浏览 • 0回复 待解决
检查字符串是否以给定字符串开头
549浏览 • 1回复 待解决
检查字符串是否以给定字符串结尾
437浏览 • 1回复 待解决
HarmonyOS 如何遍历包含emoji字符串
459浏览 • 1回复 待解决
如何生成UUID字符串
2236浏览 • 1回复 待解决
HarmonyOS字符串替换问题
908浏览 • 1回复 待解决
HarmonyOS 字符串显示异常
486浏览 • 1回复 待解决