zipアーカイブをサーバーにアップロードし、その中のファイルを開きたいと考えてい.txt
ます.jpg
。コントローラーでアーカイブを正常に取得し、 を介して各ファイルの名前を取得しますZipEntry
。今、それを開きたいのですが、そのためにはファイルへのフルパスを取得する必要があります。
私はそれを行う方法を見つけていません。それを行う方法をいくつか提案してもらえますか?
アップデート
以下に提案されている例を使用しようとしましたが、ファイルを開くことができません
ZipFile zFile = new ZipFile("trainingDefaultApp.zip");
私は持っていますFileNotFoundException
というわけでスタート地点に戻ります。Java Spring アプリケーションにアップロード フォームがあります。コントローラーでは、zipアーカイブを次のように取得しましたbyte[]
@RequestMapping(method = RequestMethod.POST)
public String create(UploadItem uploadItem, BindingResult bindingResult){
try {
byte[] zip = uploadItem.getFileData().getBytes();
saveFile(zip);
それから私はそれぞれを手に入れましたZipEntry
InputStream is = new ByteArrayInputStream(zip);
ZipInputStream zis = new ZipInputStream(is);
ZipEntry entry = null;
while ((entry = zis.getNextEntry()) != null) {
String entryName = entry.getName();
if (entryName.equals("readme.txt")) {
ZipFile zip = new ZipFile(entry.getName()); // here I had got an exception
ドキュメントによると、私は大丈夫でしたが、私にとっては、ファイル名のみを渡し、ファイルを正常に開くと思われるのは奇妙です