微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在 PHP 中读取 zip 文件与在 Java 中读取不同

如何解决在 PHP 中读取 zip 文件与在 Java 中读取不同

我需要将 PHP 代码转换为 Java。其中一个函数将 zip 文件转换为 URL 编码格式。我使用相同的压缩文件夹(其中包含一个 .csv 文件)。

在使用此代码PHP 中,我得到此响应

$file = "batch.zip";
echo file_get_contents($file);

Response: PK �mSRbatch/PKjRR_I��75*batch/batch_2020-08-31-14-43-09 - copy.csv�M-.NLO�)��I+���I�O��K��JIK)N+N�1107��4�446�1�����5��PK �mSR$batch/ V*u��V*u��C~1p��PKjRR_I��75*$ $batch/batch_2020-08-31-14-43-09 - copy.csv S{�-���"�t�����s��PK��

但是当我尝试在 Java 中打开同一个文件(我使用的是 Maven)时,我得到了这个响应

ClassLoader classloader = Thread.currentThread().getContextClassLoader();
InputStream file = classloader.getResourceAsstream("batch.zip");
StringBuilder textBuilder = new StringBuilder();
try (Reader reader = new BufferedReader(new InputStreamReader
  (file,Charset.forName(StandardCharsets.UTF_8.name())))) {
    int c = 0;
    while ((c = reader.read()) != -1) {
      textBuilder.append((char) c);
    }
}
System.out.println("textBuilder = " + textBuilder.toString());

Response: textBuilder = PK
     �mSR               batch/PK   jRR_I��7   5   *   batch/batch_2020-08-31-14-43-09 - copy.csv�M-.NLO�)��I+���I�O��K��JIK)N+N�1107��4�446�1�����5�� PK 
     �mSR             $              batch/
         V*u��V*u��C~1p��PK    jRR_I��7   5   * $           $   batch/batch_2020-08-31-14-43-09 - copy.csv
         S{�-���"�t�����s��PK      �   �     

除了用 Java 读取的文件中存在许多空间之外,我还丢失了一些字符。有什么帮助吗?我的最终目标是读取一个 zip 文件,将其编码为 base 64 并在最后进行 url 编码

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?