파일 전송 (한글 파일명 깨짐 방지)
포스트
취소

파일 전송 (한글 파일명 깨짐 방지)

소스 코드

public String fileUpload(MultipartHttpServletRequest request, String uploadRoot, String fileName) throws Exception {
    MultipartFile mf = request.getFile(fileName); //ajax에서 이름을 주었던 대로 MultipartFile 객체에 저장
    
    String originalFileName = new String(mf.getOriginalFilename().getBytes("8859_1"),"utf-8"); //원본 파일명, 한글깨짐방지
    String extension = originalFileName.substring(originalFileName.lastIndexOf("."));	//파일 확장자
    String savedFileName = UUID.randomUUID() + extension;   //저장될 파일 명
    
    try {
        mf.transferTo(new File(uploadRoot + savedFileName)); //InputStream를 사용하지 않고 쉽게 저장하는 방법
    } catch (IllegalStateException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }
    
    return savedFileName;
}
이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.