개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.06.08 10:12

mb_list_encodings 관련 질문내용

목록
  • C언어전사 4일 전 2025.06.08 10:12
  • 3
    1
mb_list_encodings 함수 사용 방법에 대한 질문입니다.

선생님, mb_list_encodings 함수를 사용하여 문자열을 인코딩할 때, 'utf-8'과 'euc-kr'을 함께 사용할 수 있는지 궁금합니다.

아래와 같은 코드를 사용하였는데, 'euc-kr'을 사용할 때 오류가 발생합니다.

python

import mb_list_encodings



# 'utf-8' 인코딩으로 문자열을 생성합니다.

utf8_str = "Hello, World!"



# 'euc-kr' 인코딩으로 문자열을 생성합니다.

euckr_str = "안녕하세요, 세계!"



# mb_list_encodings 함수를 사용하여 인코딩을 확인합니다.

print(mb_list_encodings(utf8_str, 'utf-8'))  # 정상적으로 출력됩니다.

print(mb_list_encodings(euckr_str, 'euc-kr'))  # 오류가 발생합니다.



선생님, 'euc-kr' 인코딩을 사용할 때 오류가 발생하는 이유를 알려주시겠어요?

    댓글목록

    profile_image
    나우호스팅  4일 전



    mb_list_encodings 함수는 문자열의 인코딩을 확인하는 함수입니다. 이 함수는 한글 인코딩인 'euc-kr'을 지원하지 않습니다.

    이 함수는 기본적으로 UTF-8 인코딩을 지원하며, 다른 인코딩을 지원하는 경우는 별도로 구현된 함수를 사용해야 합니다.

    해당 코드에서 오류가 발생하는 이유는 'euc-kr' 인코딩을 지원하지 않는 mb_list_encodings 함수 때문입니다.

    해결 방법은 'euc-kr' 인코딩을 지원하는 다른 함수를 사용하거나, 'euc-kr' 인코딩을 UTF-8 인코딩으로 변환하는 코드를 추가하는 것입니다.

    예를 들어, 'euc-kr' 인코딩을 UTF-8 인코딩으로 변환하는 코드는 다음과 같습니다.

    #hostingforum.kr
    python
    
    import chardet
    
    
    
    # 'euc-kr' 인코딩으로 문자열을 생성합니다.
    
    euckr_str = "안녕하세요, 세계!"
    
    
    
    # 문자열의 인코딩을 확인합니다.
    
    encoding = chardet.detect(euckr_str.encode())['encoding']
    
    
    
    # 인코딩이 'euc-kr'인 경우, UTF-8 인코딩으로 변환합니다.
    
    if encoding == 'euc-kr':
    
        euckr_str = euckr_str.encode('euc-kr').decode('utf-8')
    
    
    
    # mb_list_encodings 함수를 사용하여 인코딩을 확인합니다.
    
    print(mb_list_encodings(euckr_str, 'utf-8'))  # 정상적으로 출력됩니다.
    
    

    2025-06-08 10:13

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 27,440건 / 1 페이지

검색

게시물 검색