Android:解压缩使用 PHP gzcompress() 压缩的字符串

2023-12-05

如何解压缩由 PHP gzcompress() 函数压缩的字符串?

有完整的例子吗?

thx

我现在这样尝试:

public static String unzipString(String zippedText) throws Exception
{
    ByteArrayInputStream bais = new ByteArrayInputStream(zippedText.getBytes("UTF-8"));
    GZIPInputStream gzis = new GZIPInputStream(bais);
    InputStreamReader reader = new InputStreamReader(gzis);
    BufferedReader in = new BufferedReader(reader);

    String unzipped = "";
    while ((unzipped = in.readLine()) != null) 
        unzipped+=unzipped;

    return unzipped;
}

但如果我尝试解压缩 PHP gzcompress (-ed) 字符串,它就不起作用。


PHP 的 gzcompress 使用 Zlib 而不是 GZIP

public static String unzipString(String zippedText) {
    String unzipped = null;
    try {
        byte[] zbytes = zippedText.getBytes("ISO-8859-1");
        // Add extra byte to array when Inflater is set to true
        byte[] input = new byte[zbytes.length + 1];
        System.arraycopy(zbytes, 0, input, 0, zbytes.length);
        input[zbytes.length] = 0;
        ByteArrayInputStream bin = new ByteArrayInputStream(input);
        InflaterInputStream in = new InflaterInputStream(bin);
        ByteArrayOutputStream bout = new ByteArrayOutputStream(512);
        int b;
        while ((b = in.read()) != -1) {
            bout.write(b); }
        bout.close();
        unzipped = bout.toString();
    }
    catch (IOException io) { printIoError(io); }
    return unzipped;
 }
private static void printIoError(IOException io)
{
    System.out.println("IO Exception: " + io.getMessage());
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android:解压缩使用 PHP gzcompress() 压缩的字符串 的相关文章

  • 从批处理文件运行 .jar

    我已经创建了一个可执行文件 jar文件 我怎样才能执行 jar使用批处理文件而不提及类路径 在 Windows 上 您可以使用以下命令 start javaw jar JarFile jar 通过这样做 命令提示符窗口不会保持打开状态
  • android - 自动检测未使用的绘图

    问题是 我在开发 Android 应用程序时使用了许多图标和图片 后来我替换了其中的许多图标和图片 但保留了旧的 以防我需要再次使用它们 我现在有大量我的 png 的drawable文件夹中 许多现在都未使用 手动整理它们需要很长时间 有没
  • 更新 Android Studio 后 Android 模拟器无法运行

    我通常使用 Android Studio 从 2 2 3 更新到 2 3 后 我的模拟器不再工作 这也很困难 因为 Google 决定弃用独立 SDK 管理器 我发现我可以检查 选择 显示包详细信息 但我仍然无法让我的 Google And
  • 如何以编程方式显示/隐藏导航抽屉

    我如何使用按钮来显示 隐藏导航抽屉 我已经使用过this https stackoverflow com questions 20971245 navigation drawer without actionbar 20971952 209
  • ScrollView 隐藏底部线性布局

    我的 Android 应用程序中有以下 XML 布局 使用 ScrollView
  • 是否可以从 Linux CLI 编译适用于 Android 的 Xamarin?

    我们有一个 Android 应用程序 它根据每个客户端使用自定义信息进行编译 目前 我们的应用程序是使用 Ionic 构建的 因此当用户要求下载 APK 时 我们会自动相应地修改其源代码 编译应用程序并提供从客户端的下载 所有这一切都是在
  • JPA 多对多关系创建两个联接表

    我正在尝试在之间创建多对多关系User and FileObject假设用户可以访问许多文件对象的类 并且文件对象可以由许多用户和一对多关系访问 因为一个用户可以拥有许多文件 但一个文件只能由一个用户拥有 这是我的代码 Entity pub
  • android获取屏幕尺寸包括状态栏和软件导航栏的尺寸

    如何获取包含导航栏和状态栏的屏幕尺寸 以像素为单位 我已经尝试过使用获取尺寸DisplayMetrics但尺寸不包括软件导航栏 自 API 17 JELLY BEAN MR1 起添加了软件导航 因此我们只需要在 API 17 及更高版本中包
  • 从 Runnable 类内部访问共享变量

    我需要在主类的 main 方法中定义一个共享变量 我需要两个线程才能访问该共享变量 我通过实现 Runnable 接口并实现该接口的抽象 run 方法来创建线程 如何从实现 Runnable 接口的类中定义的 run 方法中引用 Main
  • 无法解析 styles.xml 中的符号“Theme.AppCompat.Light.DarkActionBar”

    Theme AppCompat Light DarkActionBar is not compiling in styles xml I have added compile com android support appcompat v7
  • 语音识别 API,Google Voice 会这么做吗?

    我有一个 Android 应用程序的想法 我希望能够说出命令并让应用程序监听这些命令并执行一些操作 例如 我希望我的应用程序闲置并听我的声音 当它听到我说 开始 时 应用程序将开始执行某些操作 直到我说 停止 这个想法是把手机放下 而不必实
  • 如何为所有测试初始化​​一次 Spring applicationContext

    我有一组基于需要 spring 上下文的测试 为了快速执行测试 我想确保 Spring 上下文仅初始化一次 然后所有测试都应该针对该上下文运行 然后应该关闭 我已经尝试过以下方法 Use RunWith SpringJUnit4ClassR
  • com.google.firebase.firestore.FirebaseFirestoreException:无法获取文档,因为客户端处于离线状态。安卓

    我收到此运行时错误 我不明白其背后的原因 com google firebase firestore FirebaseFirestoreException Failed to get document because the client
  • 每个项目有 2 个 TextView 的 Android ListView

    我在网上看到的所有示例每个项目仅包含 1 个 TextView 并且它们从数组加载数据 我不明白如何指定哪些数据去哪里 例如我的项目布局如下所示
  • Java双精度求和问题

    我想知道为什么我会收到此错误 这是Eclipse调试的显示日志 var double 2 8 tot getIva java lang Double 0 17 var tot get double 2 9699999999999998 我不
  • 渲染期间引发异常:无法找到操作栏的布局

    刚才使用 Android Studio 时 我在编辑器中编辑 XML 文件 在预览和设计窗口中收到此错误 Exception raised during rendering Unable to find the layout for Act
  • RMI服务器异常

    当我尝试运行使用远程注册表的服务器时 我收到以下来自 RMI 的异常 我的 Server2 类中 main 方法的注册表代码是 Registry registry LocateRegistry getRegistry 192 168 1 4
  • Java 8 并行流和 ThreadLocal

    我试图弄清楚如何在 Java 8 并行流中复制 ThreadLocal 值 所以如果我们考虑一下 public class ThreadLocalTest public static void main String args Thread
  • 如何在servlet应用程序中更改用户的tomcat密码?

    我们的 Web 应用程序部署在 Tomcat 上 目前使用 UserDatabaseRealm 来确保安全 我们希望在应用程序中提供一个页面 用户可以在其中更改密码 一个简单 常见的 Web 应用程序功能 我找不到任何示例 servlet
  • 处理 Android 自定义内容提供程序中的(跨进程)异常

    我的 Android 应用程序中有一个自定义内容提供程序 运行得相当不错 我希望其他应用程序也可以访问我的内容提供商 我想要一些干净的方法来传达异常和错误 但据我所知 Android 内容提供程序框架没有提供任何跨进程传播异常的方法 我应该

随机推荐

  • 使用 django-allauth 注册后阻止用户登录

    我正在为我的 django 应用程序使用 django allauth 默认情况下 当用户成功注册时 他们会自动登录 如何覆盖默认行为并阻止用户在成功注册后登录 用户注册后 必须将他 她重定向到登录页面 我已禁用电子邮件验证 谢谢 sett
  • 合并大量 data.frames [重复]

    这个问题在这里已经有答案了 可能的重复 同时合并列表中的多个数据框 example data frames df1 data frame id c 1 73 2 10 43 v1 c 1 2 3 4 5 br df2 data frame
  • 检查 kubectl 版本时出现“身份验证为:您所在的匿名组”错误

    我正在尝试在我的计算机中设置 kubectl 工具来远程管理 Kubernetes 集群并使用 Helm 我正在 Ubuntu 16 04 机器上尝试 我通过以下链接关注官方 Kubernetes 文档 https kubernetes i
  • 将日历设置为下周四

    我正在 Android 中开发一个应用程序 该应用程序的服务必须在每周四和周日 22 00 执行 我真正需要的是将日历设置为该日期和时间 但是 我不确定该怎么做 Calendar calendar Calendar getInstance
  • 从 Azure 云表删除时出错 - ResourceNotFound

    我在从天蓝色表中删除对象时遇到间歇性问题 它只影响我大约 1 的尝试 如果稍后再次进行相同的调用 那么它工作正常 但我很想找出背后的原因 我在谷歌上搜索了一下 发现缺乏关于如何创建非常可靠的删除 插入和更新代码的文档 这令人非常惊讶 这一切
  • 飞镖双分精度

    执行此操作的正确方法是什么 399 9 100 我期望看到的是 3 999 但结果是 3 9989999999999997 你看到的结果是correct 这不是你想要的 双精度数不是精确值 写 399 9 得到的双倍实际上是精确值 399
  • 在 Android 上从 .png 文件绘制自定义视图的背景

    我通过扩展 View 创建了一个自定义 View 在 onDraw 中 我设法画了一些圆圈和其他东西 但现在我想从资源 SD 卡或流 添加背景 这实际上是我从服务器下载的地图 然后在其上绘制 适用于 Android 8 Override p
  • 当重复使用基本页面时,是否有一种方法可以加快 PDF 页面合并速度(基本上是在一个页面与另一个页面添加水印)?

    澄清 我不想向 PDF 文件添加页面 我想将内容添加到一个非常大的 PDF 页面 页面有时会发生变化 每次内容都不同 我正在使用 pypdf2 和 reportlab 对大 PDF 页面 10MB 进行少量添加 这需要 30 秒或更长时间
  • 设置的最低有效位的位置

    我正在寻找一种有效的方法来确定整数中设置的最低有效位的位置 例如对于 0x0FF0 则为 4 一个简单的实现是这样的 unsigned GetLowestBitPos unsigned value assert value 0 handle
  • Yii:视频上传失败

    我是伊比 我正在做什么来上传视频 因为我正在使用Uploadmiltifiles扩展名并点击此链接http www yiiframework com extension uploadmultifiles 我已经遵循了所有内容 但是当我上传视
  • Javascript 二维数组:增加特定项目的值

    我有一个带有整数的二维数组 我想要的只是用数字增加特定项目 初始状态 var arr1 var arr2 1 2 3 arr1 push arr2 arr1 push arr2 arr1 push arr2 arr1 现在看起来像这样 0
  • 如何在 R 中使用大数据对多个变量进行热编码?

    我目前有一个包含 260 000 行和 50 列的数据框 其中 3 列是数字 其余是分类 我想要对分类列进行一次热编码 以便执行 PCA 并使用回归来预测类别 我怎样才能在 R 中完成下面的例子 Example V1 V2 V3 V4 V5
  • 如何在gnuplot中绘制每行的图

    我有一个这种格式的文件 0 R1 R2 R3 R4 w1 I1 I2 I3 I4 w2 I1 I2 I3 I4 w3 I1 I2 I3 I4 在许多波长 w 中具有半径 R 和强度 I 的值 我想以二维方式绘制 第 1 行 半径 在 x 轴
  • 对 DataTrigger 条件的 Value 属性使用绑定

    我正在开发 WPF 应用程序并在数据触发器方面遇到困难 我想将触发条件的值绑定到我拥有的某个对象
  • Prolog - 继兄弟姐妹的链式法则

    我是 Prolog 的新手 有一个关于为共享 共同父母 的继兄弟姐妹编写 链式规则 的问题 在我的程序中 我假设存在父级 X Y 断言 X 是 Y 的父级的事实 我需要一个规则链 X Y L 如果 X 是一个ancestorY 的 则 L
  • 无法使 CSS 粘性页脚正常工作。我究竟做错了什么?

    嗯 这是我在这里发表的第一篇文章 我真的很喜欢这个网站 我已经启动了一个非常基本的 丑陋的 网站 由于某种原因 我无法让 CSS 粘性页脚在 FireFox 上工作 IE 可以工作 但 FF 将其显示在页面的中间位置 网址是http dev
  • 将 Woocommerce 中的免费送货优惠券的所有送货方式成本设置为零

    我的购物车中有 3 种运输方式 一旦您的客户输入免费送货优惠券 这些方式的价格就应该为零 我知道如何在functions php中添加过滤器来检测优惠券 但有人知道将购物车 单选按钮 中可见的运输方法设置为零的代码片段吗 我的送货方式是 U
  • IE 和 FF 中的 $(window).height() 问题

    我写了一个脚本来制作动态大小的div table 在我的页面内 我还有一个菜单 menu nav其中确定了最小高度 在 Chrome 和 Safari 中一切正常 但在 IE FF 中则不然 在这两种情况下 我都有同样的问题 如果我全屏加载
  • jquery从数据库填充多个下拉列表

    我知道如何使用 jQuery 用数据库中的值填充单个下拉框 但现在我需要进行一个长查询来使用下拉列表过滤掉 5 个表字段 也就是说 通过选择第一个 我需要更改其余 4 个下拉列表列表值 通过更改第二个下拉列表 我需要更改其他 3 个下拉列表
  • Android:解压缩使用 PHP gzcompress() 压缩的字符串

    如何解压缩由 PHP gzcompress 函数压缩的字符串 有完整的例子吗 thx 我现在这样尝试 public static String unzipString String zippedText throws Exception B