자바(Java)

java.lang.IllegalArgumentException: Illegal character in path at index

xemaker 2021. 12. 16. 15:00

개발 하다보면

java.lang.IllegalArgumentException: Illegal character in path at index 50: http://1.1.1.1/10000/가나다 마바사.xlsx
java.net.URI.create(Unknown Source)
org.apache.http.client.methods.HttpPost.<init>(HttpPost.java)

이런 에러를 접할때가 있다.

파일을 원격에 있는 서버로 java io를 통해서 보냈는데 에러가 발생한 케이스다.

Illegal character in path 즉 경로에 잘못된 문자가 있다는 것이다.

그 경로에 잘못된 문자는 바로 파일명에 있는 띄어 쓰기 (space) 다.

(한글문제는 아니다.)

파일명을 띄어쓰기 없이 한글을 붙여서 써도 되긴하다.

혹은 인코딩을 해서 스페이스를 문자화 해야 한다.

혹은 파일명을 2021121615063012384732.xlsx 이런식으로 파일명을 임시로 치환한다음 보내서 원래 파일명으로 받으면 된다.