0

以下は、ファイルをサーバーにアップロードするために使用したコードです。しかし、コードは例外ディレクトリまたはファイルが見つからない..

                ResourceBundle rs_mail = ResourceBundle.getBundle("mail");
                String upload_path = rs_mail.getString("upload_path");
                File file = null;
                FileItemFactory factory = new DiskFileItemFactory();
                ServletFileUpload upload = new ServletFileUpload(factory);
                // Parse the request to get file items.
                List fileItems = upload.parseRequest(request);

                // Process the uploaded file items
                Iterator i = fileItems.iterator();
                while (i.hasNext()) {
                    FileItem fi = (FileItem) i.next();
                    File uploadDir = new File(upload_path);
                    if (!uploadDir.exists()) {
                        uploadDir.mkdir();
                    }
                  file = new File(upload_path + file.separator + fi.getName());

                    fi.write(file);
                }

誰でも例外の理由を指摘できますか..

プロパティファイルの内容

アップロードパス=../../../アップロード

4

1 に答える 1

1

へのパス上にすべての親ディレクトリも作成してくださいupload_path

if (!uploadDir.exists()) {
   uploadDir.mkdirs();
}

mkdirs()の代わりに を使用していることに注意してくださいmkdir()mkdir()親構造が存在しない場合、失敗します。mkdirs()また、必要な親ディレクトリを作成しようとします。

false戻り値も確認する必要があります。ディレクトリを作成できなかった場合は、両方のメソッドが戻ります。

于 2013-10-09T09:21:24.153 に答える