1

我每次都在服务器位置上传文件..但是在某个时间或第二天之后,我的系统中缺少该位置。所以我总是收到错误文件未找到异常..

这是我的代码

        String fileName = file.getFileName().trim();
           if(!("").equals(fileName)){  
               long timeStamp = com.mysql.jdbc.Util.getCurrentTimeNanosOrMillis();
                String fileExtension = fileName.substring(fileName.lastIndexOf("."));               
                fileName = fileName.substring(0,fileName.lastIndexOf("."));             
                String newFileName = fileName.concat("-").concat(String.valueOf(timeStamp)).concat(fileExtension);
                String foldercreated = folder + "\\" + newFileName;
                dto.setReplyDocName(newFileName);
                fos = new FileOutputStream(foldercreated);
                fos.write(file.getFileData());
                dto.setReplyDocLocation(foldercreated);
                fos.flush();
                fos.close();

        }
4

2 回答 2

2

您将上传的文件存储在 Eclipse 用于部署 webapp 的临时目录中。所以每次部署webapp,这个目录都会被清空。

上传的文件不应存储在那里。配置文件应存储的绝对路径(如c:\uploaded_files),并将文件存储在此目录中。

于 2013-07-18T09:15:22.947 回答
0

要存储上传的文件,您可以在 webapp 中创建一个新文件夹,然后您可以将此位置用作:

File file=new File(session.getServletContext().getRealPath("/Your_Location"));

或者您可以使用任何绝对位置。

于 2013-07-18T09:22:36.337 回答