2017-11-01 2 views
0

FileItem에서 전체 경로를 가져 와서 FileInputStream에 넣는 방법은 getName 만 할 수있는 것처럼 보입니다. 아래는 내 코드, 파일 및 자동 압축 파일을 서버에 업로드하려고하는 im입니다. 당신에게FileItem에서 전체 경로를 얻는 방법

DiskFileItemFactory fup = new DiskFileItemFactory(); 
ServletFileUpload upload = new ServletFileUpload(fup); 

List items = upload.parseRequest(req); 
Iterator iter = items.iterator(); 

while (iter.hasNext()) { 
       FileItem item = (FileItem) iter.next();        
       if (!item.isFormField()) { 

       File f = new File(Properties.get("dir") + File.separator + "test.zip"); 
       ZipOutputStream out = new ZipOutputStream(new FileOutputStream(f)); 
       ZipEntry e = new ZipEntry(flNm); 
       out.putNextEntry(e); 
       FileInputStream in = new FileInputStream((File) item); 

       byte[] buffer = new byte[1024]; 
       int len; 
       while ((len = in.read(buffer)) > 0) { 
        out.write(buffer, 0, len); 
       } 
       in.close(); 
       out.closeEntry(); 

       out.close(); 
       } 
} 

답변

1

당신은 비어 새로 만든 임시 파일을 참조하는 File 객체를 읽고 감사드립니다. 그리고 그것을 파일에 씁니다. 네가 그 일을하고 싶다고 확신하니?

+0

안녕하세요, 죄송합니다. FileItem을 Java의 FileInputStream에 넣는 방법을 묻고 싶습니다. 내 코드 "FileItem item = (FileItem) iter.next();"가 있습니다. 항목을 FileInputStream에 넣으려면 = new FileInputStream(); – Beginner

+0

@Beginner 질문을 다시 편집 할 수 있습니다. – Tejal

+0

@Tejal 이미 내 질문을 업데이트합니다. 감사합니다. – Beginner

관련 문제