我每次都在服务器位置上载文件。但是在某个时间或第二天之后,该位置从我的系统中丢失了,所以我总是收到未找到异常的错误文件。
这是我的代码
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();
}
最佳答案
您将上载的文件存储在Eclipse用来部署Web应用程序的临时目录中。因此,每次部署Web应用程序时,都会清除此目录。
上载的文件不应存储在此处。配置应在其中存储文件的绝对路径(例如c:\uploaded_files
),并将文件存储在此目录中。
关于java - 上载的文件丢失,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17717667/