繁体   English   中英

使用 Scala 在 .zip 文件夹中创建一个新文件

[英]Create a new file in .zip folder using Scala

我有一个要求,我必须在我的 .zip 文件夹中创建 1 个 xml 文件。

你能告诉我如何使用 java/scala 来实现这一点吗?

另外让我知道我可以直接更新 .zip 文件夹 Array[Byte] 并为我的新 xml 文件添加额外的 Array[Byte] 吗?

如果您使用的是 Java 7 及更高版本,那么您应该使用Zip 文件系统

以下代码示例展示了如何创建 zip 文件系统并将文件复制到新的 zip 文件系统。

import java.util.*;
import java.net.URI;
import java.nio.file.Path;
import java.nio.file.*;

public class ZipFSPUser {
    public static void main(String [] args) throws Throwable {
        Map<String, String> env = new HashMap<>(); 
        env.put("create", "true");
        // locate file system by using the syntax 
        // defined in java.net.JarURLConnection
        URI uri = URI.create("jar:file:/codeSamples/zipfs/zipfstest.zip");

       try (FileSystem zipfs = FileSystems.newFileSystem(uri, env)) {
            Path externalTxtFile = Paths.get("/codeSamples/zipfs/SomeTextFile.txt");
            Path pathInZipfile = zipfs.getPath("/SomeTextFile.txt");          
            // copy a file into the zip file
            Files.copy( externalTxtFile,pathInZipfile, 
                    StandardCopyOption.REPLACE_EXISTING ); 
        } 
    }
}

这篇文章可以帮助您: 使用 Java 将文件附加到 zip 文件

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM