这可能是因为手机和电脑所使用的编码不同造成的。手机常用UTF-8编码,而电脑可能使用GBK等编码。
可以尝试使用Java中的ZipInputStream类,在读取ZIP文件时指定编码格式。示例代码如下:
ZipInputStream zis = new ZipInputStream(new FileInputStream(apkFile));
ZipEntry entry;
while ((entry = zis.getNextEntry()) != null) {
if (!entry.isDirectory()) {
String name = entry.getName();
InputStream is = zis;
InputStreamReader isr = new InputStreamReader(is, "UTF-8");
BufferedReader br = new BufferedReader(isr);
String line;
StringBuilder sb = new StringBuilder();
while ((line = br.readLine()) != null) {
sb.append(line).append('\n');
}
String content = sb.toString();
// 处理文件内容
}
}
在Java代码中使用了UTF-8编码来读取ZIP文件中的文件内容。通过这种方式,可以使得在不同设备上读取ZIP文件时得到相同的结果。