Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- kotlin
- 재밌당
- Eclipse
- 오라클
- 리눅스
- 공부
- Git
- Java
- 깃허브
- 자바스크립트
- Android
- 개발자
- 도쿄
- GitHub
- 오류해결
- 3박4일
- 자바
- 코틀린
- 안드로이드스튜디오
- error
- 개발
- JavaScript
- 별5개
- AndroidStudio
- android studio
- oracle
- 안드로이드
- 1박2일
- db
- 친구랑
Archives
- Today
- Total
dev_eunz
[Java] String을 MultipartFile FileUpload 시 '이 파일 형식은 지원되지 않는 것 같습니다.' 오류 원인 본문
IT/프로그래밍
[Java] String을 MultipartFile FileUpload 시 '이 파일 형식은 지원되지 않는 것 같습니다.' 오류 원인
은그램 2024. 8. 24. 22:31728x90
반응형
MultipartFile 업로드를 했는데, 파일이 생성되었는데
'이 파일 형식은 지원되지 않는 것 같습니다.' 라는 오류가 발생하는 게 아닌가..!
이럴 때에는,
String 값을 MultipartFile 으로 설정했을 때 데이터를 확인해야 한다.
String to MultipartFile 시,
String imageString = "~~~";
byte[] imageByte = imageString.getBytes();
MultipartFile uploadFile = new MockMultipartFile(
"file" // 파일명 ( html인 경우, form 타입의 id값
, "image.jpg" // 저장할 데이터 full name
, "image/jpeg" // 데이터 타입
, imageByte );
이미지파일 문자열 값을 byte 로 변환해서,
MultipartFile 데이터로 만드는 것이다.
이 때에, String 값이 암호화되지 않은 plainText인지 확인하는 게 우선인 것 같다.
나의 경우에는,
String 값이 Base64 인코딩이 되어있는 상태여서 제대로 처리되지 않았다.
// java 8 이상
String decImage = Base64.getDecode(imageString);
// java 1.7 이하
String decImage = Base64.decodeBase64(imageString);
이렇게 이미지 문자열을 디코딩 후,
해당 데이터를 byte 처리하여 위의 방식 대로 upload 처리를 하니 이미지 업로드가 정상적으로 처리되었다!!!!!!!!!!!!!!!!!!!!!!!!!!
728x90
반응형
'IT > 프로그래밍' 카테고리의 다른 글
ERR_UNEXPECTED_PROXY_AUTH 에러 원인 해결 (0) | 2024.08.18 |
---|---|
[JAVASCRIPT] 자바스크립트 동기/비동기 코드 사용하기 (0) | 2024.01.23 |
[ORACLE] ORA-01438 이 열에 대해 지정된 전체 자릿수보다 큰 값이 허용됩니다. 오류 해결 (2) | 2023.12.31 |
[ORACLE] 컬럼타입 CLOB 타입으로 변경하기 (0) | 2023.12.28 |
[ORACLE] 컬럼 순서 바꾸기 (0) | 2023.12.26 |
Comments