2012-07-02 3 views
1

자바 코드를 사용하여 자동 압축 해제 압축 파일 (여기 ftp://ftp.dnr.state.oh.us/OilGas/Download/Production/By_Year/2010Production.exe)을 읽으려고했습니다. 자바에서 자체 추출 압축 풀기

내가 세 가지 방법, How can I read from a Winzip self-extracting (exe) zip file in Java?

에서 언급 한 하나 (치트가 작동하지 않을 수 있습니다 생각) EXE 파일을 다운로드하여 우편으로 이름을 바꿀 수있는 두 번째 시도하고 다음을 읽으려고 ... 두 그들 중 하나가 작동하지 않았다.

또한 유용하지 않은 7-ZIP의 LZMA SDK를 사용하여 마지막 하나는, 내가 인터넷하지만 유용한 아무것도에 여러 가지 다른 자원 바라 보았다. 어떤 사람이 나를 도울 수 있습니까?

답변

0

이 경우 TrueZip이 가장 잘 작동합니다. (이어야 내 경우)

(일반 우편의 형식 HEADER1의 파일 1의 상태에서) 추출 우편은 다음과 같은 형식의 코드 1의 HEADER1 file1을하다 자기가 ... 코드는 압축

를 추출하는 방법을 알려줍니다

) : "\ 2006Production.exe C"를 Truezip 추출 유틸리티가 추가 바이트에 대해 불평하고 예외를

을 던져 여기에 코드

private boolean Extract(String src, String dst, String incPath) { 


    TFile srcFile = new TFile(src, incPath); 
    TFile dstFile = new TFile(dst); 
    try { 
     TFile.cp_rp(srcFile, dstFile, TArchiveDetector.NULL); 
    } catch (IOException e) { 
     return true; 
    } 

    return true; 
} 

비록 당신은 추출과 같은이 방법 (새로운 String를 (호출 할 수 있습니다 새 문자열 ("c : \"), "");

는 현재 http://repo1.maven.org/maven2/de/schlichtherle/truezip/truezip-samples/7.5.5/truezip-samples-7.5.5-jar-with-dependencies.jar

당신은 당신의 코드에서 클래스를 가져와야합니다에서 Truezip 소스 파일 패키지 (항아리)를 다운로드 할 수 있습니다.

import de.schlichtherle.truezip.file.TArchiveDetector; import de.schlichtherle.truezip.file.TFile;

파일이 C 드라이브에서 추출됩니다 ... 파일에서 직접 작업을 수행 할 수 있습니다. 이게 도움이 되길 바란다.

감사합니다.