URI 구문 예외

URI 구문 예외 (URISyntaxException)

문자열을 URI 참조로 파싱할 수 없을 때 던져지는 checked 예외예요. 잘못된 형식의 URI 문자열을 다룰 때 자주 마주하죠.

출처: Java API Reference

본문

URISyntaxException은 주어진 입력 문자열을 URI 참조로 해석하지 못할 때 발생하는 checked exception이에요. 문자열을 URI로 변환하는 과정에서 문법 오류가 나면 이 예외가 던져집니다.

public class URISyntaxException extends Exception

이 예외는 두 개의 생성자를 제공해요.

public URISyntaxException(String input, String reason)
public URISyntaxException(String input, String reason, int index)

input은 파싱에 실패한 입력 문자열, reason은 실패 사유를 담고 있어요. 세 번째 생성자는 오류가 발생한 위치를 나타내는 index를 추가로 받습니다. 제공하는 메서드는 다음과 같아요.

public String getInput()
public String getReason()
public int getIndex()
public String getMessage()
  • getInput() — 파싱에 실패한 원본 입력 문자열을 반환해요.
  • getReason() — 입력 문자열을 파싱하지 못한 이유를 설명하는 문자열을 반환해요.
  • getIndex() — 파싱 오류가 발생한 위치의 인덱스를 반환하며, 위치를 알 수 없으면 -1을 반환해요.
  • getMessage() — 파싱 오류를 설명하는 문자열을 반환해요.

java.lang.Exception을 상속하므로 try-catch 또는 throws로 처리해야 해요.

더 알아보기 (Learn more)