java - Tomcat保存文件出现异常

标签 java tomcat

我正在尝试像这样将上传的文件保存到我的磁盘:

   Part filePart = req.getPart("pic");
    String fileName = filePart.getSubmittedFileName();
    InputStream fileContent = filePart.getInputStream();

    File uploads = new File("/images/gin");
    File file = new File(uploads, fileName);
    if(!file.exists())
        file.createNewFile();
    Files.copy(fileContent, file.toPath());

Tomcat 总是给我异常(exception):

java.io.IOException: No such file or directory
    java.io.UnixFileSystem.createFileExclusively(Native Method)
    java.io.File.createNewFile(File.java:1006)
    com.springapp.mvc.servlets.AddItemServlet.doPost(AddItemServlet.java:39)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:644)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:725)
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)

我不知道为什么它不起作用。有人可以帮助我吗?

最佳答案

在创建新文件之前调用uploads.mkdirs();

 mkdirs()

 * Creates the directory named by this abstract pathname, including any
 * necessary but nonexistent parent directories.  Note that if this
 * operation fails it may have succeeded in creating some of the necessary
 * parent directories.

关于java - Tomcat保存文件出现异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28025079/

相关文章:

java - eclipse远程调试找不到源

java - 如何检查更新的文件?

java - 如何使用java读取pdf文件?

java - Tomcat context.xml 的 Netbeans 问题

jsp - Tomcat 7 不同的行为

java - FormDataParam InputStream 即使文件为空也返回值

java - 如何通过jpql中的属性(name_techno)查找数据

java - 为什么我的 JDK11 程序会受到 Windows 7 个性化显示设置的影响?

java - 使用 new 而不是 Intent 在另一个 Activity 中创建一个 Activity 是否符合规定?

java - eclipse 中的 Tomcat WTP : route all requests to same Servlet