2016-07-30 77 views
0

Datei hochladen ändern Dateiname in Java-serclet.Wie eine Datei umbenennen (ändern Sie den Dateinamen) in Java-Servlet.Rename und speichern Sie die Datenbank.Klicken Sie mir bitte.Datei-Upload Dateiname in Java ändern

meine Datei Upload-Code.

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(); 
      } 
     } 
    } 
} 

Antwort

1

Sie müssen diese Zeile ändern

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

einfach item.getName() schaltet der Name sein, Sie die Datei einmal gespeichert haben möchten.