无法在 android-studio (5.0 Lollipop) 中使用 Zip 文件系统 (Java 7)
Unable to use Zip File System (Java 7) in android-studio (5.0 Lollipop)
我一直在尝试在不解压缩 zip 的情况下替换 zip 文件。我在这里尝试使用最有效的答案:
不过,我会粘贴下面的代码以供参考。
Map<String, String> env = new HashMap<>();
env.put("create", "true");
Path path = Paths.get("test.zip");
URI uri = URI.create("jar:" + path.toUri());
try (FileSystem fs = FileSystems.newFileSystem(uri, env))
{
Path nf = fs.getPath("new.txt");
try (Writer writer = Files.newBufferedWriter(nf, StandardCharsets.UTF_8, StandardOpenOption.CREATE)) {
writer.write("hello");
}
}
Android Studio 抛出一条错误消息:
错误:找不到符号变量路径,
错误:找不到符号方法 toUri(),
错误:找不到符号 class 文件系统,
错误:找不到符号变量 FileSystems。
难道android不完全支持Java7??或者我需要做些什么才能让它工作吗?
Android 有自己的 Java 库 classes 的实现,它不完全支持 Oracle 库中的所有内容。 java.nio.file.Path
class 不在 Android 的实现中。
您可以在 http://developer.android.com/reference/java/nio/package-summary.html
查看有关 Android 的 nio
包中可用内容的文档
我一直在尝试在不解压缩 zip 的情况下替换 zip 文件。我在这里尝试使用最有效的答案:
不过,我会粘贴下面的代码以供参考。
Map<String, String> env = new HashMap<>();
env.put("create", "true");
Path path = Paths.get("test.zip");
URI uri = URI.create("jar:" + path.toUri());
try (FileSystem fs = FileSystems.newFileSystem(uri, env))
{
Path nf = fs.getPath("new.txt");
try (Writer writer = Files.newBufferedWriter(nf, StandardCharsets.UTF_8, StandardOpenOption.CREATE)) {
writer.write("hello");
}
}
Android Studio 抛出一条错误消息: 错误:找不到符号变量路径, 错误:找不到符号方法 toUri(), 错误:找不到符号 class 文件系统, 错误:找不到符号变量 FileSystems。
难道android不完全支持Java7??或者我需要做些什么才能让它工作吗?
Android 有自己的 Java 库 classes 的实现,它不完全支持 Oracle 库中的所有内容。 java.nio.file.Path
class 不在 Android 的实现中。
您可以在 http://developer.android.com/reference/java/nio/package-summary.html
查看有关 Android 的nio
包中可用内容的文档