0

私はJavaが初めてです..... zipフォルダーに3つのファイルがあり、それを使用して抽出しています

String command = "cmd /c start cmd.exe /K \"jar -xvf record.zip\"";
     Process ps= Runtime.getRuntime().exec(command);

jar -xvf を使用してこれらのファイルを抽出した後、record.zip に存在する 3 つのファイルすべてを String に格納する必要があります。

BufferedReader br=new BufferedReader(new InputStreamReader(ps.getInputStream())); 
     String temp = br.readLine();
     while( temp != null ) { //!temp.equals(null)) {
         output.write(temp);
         temp = br.readLine();
         }
         output.close();

このコードを試してみましたが、目的の結果が得られません....よろしくお願いします....

4

1 に答える 1

0

JDK に既に含まれている機能を使用して、zip ファイルから読み取ることができます。たとえば、これにより、zip 内のすべてのファイルの内容が 1 行ずつコンソールに出力されます。

public static void main(String[] args) throws ZipException, IOException {
    final File file = new File("myZipFile.zip");
    final ZipFile zipFile = new ZipFile(file);
    final Enumeration<? extends ZipEntry> entries = zipFile.entries();
    while (entries.hasMoreElements()) {
        final ZipEntry entry = entries.nextElement();
        System.out.println(entry);
        if (!entry.isDirectory()) {
            final BufferedReader reader = new BufferedReader(new InputStreamReader(zipFile.getInputStream(entry)));
            for (String line = reader.readLine(); line != null; line = reader.readLine()) {
                System.out.println(line);
            }
        }
    }
    zipFile.close();
}
于 2013-03-18T17:43:19.813 に答える