이스케이프 시퀀스란 백슬래시() 뒤에 한 문자나 숫자 조합이 오는 문자 조합을 말한다.
이 에러를 해결하기 위해선 Java 문자열에서 백슬래시()를 표현하기 위해선 이스케이프 문자로서의 백슬래시(\)를 사용해야 한다.
원인
File file = new File("\git\endangered\WebContent\images\20231102015937083_1207_0.jpg");

첨부파일 업로드 중 파일 타입 테스트를 위한 코드를 추가했다.
new File의 파일 경로 부분에서 유효하지 않은 이스케이프 시퀀스라는 에러가 발생했다.
escape sequence(이스케이프 시퀀스)
백슬래시(\) 뒤에 한 문자나 숫자 조합이 오는 문자 조합을 말한다.
아래는 오라클에서 제공하는 이스케이프 시퀀스에 관한 문서 중 일부분을 정리한 내용이다.
이스케이프 시퀀스 | 설명 |
\t | 탭 삽입 |
\b | 백스페이스 삽입 |
\n | 개행(줄바꿈) 삽입 |
\r | 캐리지 리턴(행 앞으로 커서 이동) 삽입 |
\f | 폼 피드 삽입 |
\' | 작은따옴표 삽입 |
\" | 큰따옴표 삽입 |
\\ | 백슬래시 삽입 |
해결
Java 문자열에서 \는 이스케이프 문자이므로 문자열에 \를 삽입하기 위해서는 \\를 입력해야 한다.
마찬가지로 문자열 내에 '를 삽입하고 싶다면 \'를 입력해야 한다.
따라서 에러가 났던 코드를 아래처럼 수정하면 된다.
File file = new File("\\git\\endangered\\WebContent\\images\\20231102015937083_1207_0.jpg");
📜참고
'Troubleshooting' 카테고리의 다른 글
JSP에서 템플릿 리터럴에 백틱을 사용하면 에러가 나는 이유 (0) | 2023.11.14 |
---|---|
session으로 URL 직접 접근 제어하기 (0) | 2023.11.06 |
드래그 앤 드롭 데이터를 Input에 넘기는 방법 (0) | 2023.11.04 |
ImageMetadataReader.readMetadata에서 com.drew.imaging.ImageProcessingException: File format is not supported 에러 발생 시 해결 방법 (0) | 2023.11.01 |