2016-07-30 9 views
0

ファイルをアップロードすると、ファイル名を変更してjava servlet.Renameのファイル名を変更し、database.pleaseを保存します。ファイルのアップロードファイル名を変更する

私のファイルアップロードコード。あなたは

item.write(new File(absoluteFilePath, FilenameUtils.getName(item.getName()))); 

この行を変更する必要が

public class AjaxImage extends MNServlet { 
    private static URLCodec urlcodec = new URLCodec("UTF-8"); 
    private static final long serialVersionUID = 1L; 

    protected void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException { 
     boolean isMultipart = ServletFileUpload.isMultipartContent(request); 
     String id = request.getParameter(Plugin.PLUGIN_ID_VARIABLE); 

     if (isMultipart) {   
      FileItemFactory factory = new DiskFileItemFactory(); 
      ServletFileUpload upload = new ServletFileUpload(factory); 
      try { 
       List<FileItem> multiparts = upload.parseRequest(request); 
       for (FileItem item : multiparts) { 
        if (!item.isFormField()) { 
         String road = ""; 
         try {       
          String name = new File(item.getName()).getName(); 
          String relativeWebPath = "/image"; 
          String absoluteFilePath = request.getServletContext().getRealPath(relativeWebPath); 
          item.write(new File(absoluteFilePath, FilenameUtils.getName(item.getName()))); 
          request.setCharacterEncoding("UTF-8"); 
          String data = ""; 
          try { 
           data =urlcodec.decode(request.getParameter("data"), "UTF-8"); 
          } catch (DecoderException e) { 
           e.printStackTrace(); 
          } 

         } catch (Exception e) {} 
        } 
       } 
      } catch (Exception e) { 
       e.printStackTrace(); 
      } 
     } 
    } 
} 

答えて

1

は、単にあなたがファイルを一度保存​​しているしたい名前であることをitem.getName()を切り替えます。

関連する問題