
	                	                 
UConverter::getErrorCode() 메서드는 UConverter::convert() 메서드에서 오류가 발생한 경우에 사용할 수 있습니다. 
UConverter::convert() 메서드에서 오류가 발생한 경우, getErrorCode() 메서드를 호출하여 오류 코드를 얻을 수 있습니다. 
getErrorCode() 메서드는 UConverter 클래스의 오류 코드를 반환합니다. 
UConverter 클래스의 오류 코드는 다음과 같습니다. 
- UCONV_ERROR_NONE : 성공
- UCONV_ERROR_INVALID_ARGUMENT : 유효하지 않은 인자가 전달된 경우
- UCONV_ERROR_UNSUPPORTED : 지원되지 않는 기능이 호출된 경우
- UCONV_ERROR_INVALID_STATE : 유효하지 않은 상태로 호출된 경우
- UCONV_ERROR_OUT_OF_MEMORY : 메모리가 부족한 경우
- UCONV_ERROR_CONVERSION_FAILED : 변환 실패
예를 들어, UConverter::convert() 메서드에서 오류가 발생한 경우, 다음과 같이 getErrorCode() 메서드를 호출하여 오류 코드를 얻을 수 있습니다. 
#hostingforum.kr
cpp
UErrorCode status = UCONV_ERROR_NONE;
UConverter* converter = uconv_open("UTF-8", "EUC-KR", &status);
if (converter != NULL) {
    UChar* input = (UChar*)"Hello";
    UChar* output = (UChar*)malloc(10 * sizeof(UChar));
    int32_t length = uconv_convert(converter, input, 5, output, 10, &status);
    if (status == UCONV_ERROR_NONE) {
        // 변환 성공
    } else {
        // 오류 코드 얻기
        UErrorCode errorCode = uconv_getErrorCode(converter);
        if (errorCode == UCONV_ERROR_INVALID_ARGUMENT) {
            // 유효하지 않은 인자가 전달된 경우
        } else if (errorCode == UCONV_ERROR_UNSUPPORTED) {
            // 지원되지 않는 기능이 호출된 경우
        } else if (errorCode == UCONV_ERROR_INVALID_STATE) {
            // 유효하지 않은 상태로 호출된 경우
        } else if (errorCode == UCONV_ERROR_OUT_OF_MEMORY) {
            // 메모리가 부족한 경우
        } else if (errorCode == UCONV_ERROR_CONVERSION_FAILED) {
            // 변환 실패
        }
    }
    free(output);
    uconv_close(converter);
}
2025-06-11 10:20