나는 만들고있는 프로그램을위한 설치 프로그램을 만들고 있는데, zip 파일을 사용하고 있으며, 압축을 풀고 zip 폴더에서 파일을 설치하는 방법을 찾지 못했습니다. 누군가가 나를 도울 수 있다면 나는 아주 행복 할 것이다.java로 파일을 이동하는 데 사용하는 몇 가지 방법은 무엇입니까?
0
A
답변
1
파일을 압축 해제를 위해 이것을보십시오 : java.util.zip
와 아파치 평민-IO 자바로 zip 파일에서 데이터를 읽을 좋은 메커니즘을 제공
String zipName = "my.zip";
String installDir = "/home/user/installDir";
try
{
ZipFile zipFile = new ZipFile(zipName);
files = zipFile.entries();
while (files.hasMoreElements())
{
ZipEntry zipEntry = files.nextElement();
if(zipEntry.isDirectory())
{
(new File(installDir + zipEntry.getName())).mkdir();
continue;
}
InputStream in = zipFile.getInputStream(zipEntry);
File newFile = new File("/home/user/tmp/testdit" + File.separator + zipEntry.getName());
new File(newFile.getParent()).mkdirs();
FileOutputStream fos = new FileOutputStream(newFile);
byte[] buffer = new byte[1024];
int len;
while ((len = in.read(buffer)) >= 0)
{
fos.write(buffer, 0, len);
}
in.close();
fos.close();
}
} catch (IOException ex)
{
ex.printStackTrace();
}
1
있지만, 실제로 디스크에 zip 파일의 압축을 해제하려는 경우 디렉토리 구조를 유지하면 그 중 가장 쉬운 Java API가 Apache Ant 일 것입니다.
Project p = new Project();
p.init();
Expand ex = new Expand();
ex.setProject(p);
ex.setSrc(new File("myArchive.zip"));
ex.setDest(new File("targetDir"));
ex.perform();
그러나 다른 덧글이 언급 한 것처럼, 당신은 아마 기존의 설치 건물 도구 등
IZPack 사용을 고려보다는 바퀴를 재발견해야한다.
+0
"가장 쉬운"(내 선호하지 않음) 및 IZPack – MadProgrammer
이 API를 살펴보십시오. http://docs.oracle.com/javase/6/docs/api/java/util/zip/package-summary.html –
* " 프로그램 "* [Java Web Start] (http://stackoverflow.com/tags/java-web-start/info)를 설치 프로그램으로 사용하십시오! –
java.util.zip API (http://docs.oracle.com/javase/6/docs/api/java/util/zip/package-summary.html)를 살펴보고 거기에 무엇이 들어 있는지 살펴보십시오. 도와주세요. –