ruby1.9.3에서 "gb2312"를 "utf-8"로 인코딩하는 "["를 변환 할 수 없습니다.

Mydting

나는 루비를 배우고 있으며 ftp 서버에서 파일 이름을 얻으려고합니다. 내가 얻은 문자열은 gb2312 (simplified Chinese) 로 인코딩되었습니다 . 대부분의 경우 다음 코드로 성공했습니다.

str = str.force_encoding("gb2312")
str = str.encode("utf-8")

그러나 "in encode': "\xFD" followed by "\x88" on GB2312 (Encoding::InvalidByteSequenceError)"문자열에 "["또는 기호가 포함되어 있으면 오류가 발생 합니다 "【".

시인

Ruby 인코딩은 많은 내부 검사를 허용합니다. 이렇게하면 주어진 문자열을 처리하는 방법을 아주 잘 알 수 있습니다.

"【".encoding
=> #<Encoding:UTF-8>
"【".valid_encoding?
=> true
"【".force_encoding("gb2312").valid_encoding?
=> false

이것은이 캐릭터가 주어진 캐릭터 세트에 있지 않다는 것을 보여줍니다! 이러한 모든 문자를 변환해야하는 경우 encode메서드를 사용하고 기본값을 제공하거나 다음과 같이 정의되지 않은 문자를 바꿀 수 있습니다.

"【".encode("gb2312", invalid: :replace, undef: :replace)
=> "\x{A1BE}"

문자 인코딩이 혼합 된 문자열이있는 경우 매우 엉망입니다. 많은 추측 없이는 알아낼 방법이 없습니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

Python : gb2312 코덱은 바이트를 디코딩 할 수 없습니다.

분류에서Dev

GB2312 인코딩 된 MIME를 읽기 가능한 문자열로 변환

분류에서Dev

Java의 입력 한자에서 GB2312 코드를 얻는 방법

분류에서Dev

인코딩 오류가 발생하면 ascii-8bit를 utf-8bit로 변환 할 수 없습니다.

분류에서Dev

csv를 UTF-8로 인코딩 할 수 없습니다.

분류에서Dev

PHP를 사용하여 파일을 ANSI에서 UTF-8로 변환 할 수 없습니다.

분류에서Dev

ASP : utf-8에서 iso-8859-1로 일부 문자를 디코딩 할 수 없습니다.

분류에서Dev

인수 '1'에 대해 'int *'를 'int * (*) [9]'로 변환 할 수 없습니다.

분류에서Dev

인코딩을 utf8로 변경할 수 없습니다.

분류에서Dev

UTF-8 코드를 R에서 올바른 문자로 변환 할 수 있습니까?

분류에서Dev

UTF8에서 ASCII로 변환 할 수 없습니다.

분류에서Dev

Latin1로 인코딩 된 텍스트 필드를 UTF8로 변환하는 MySQL 함수

분류에서Dev

Julia 인코딩 함수가 github 양식 base64 데이터를 UTF-8로 변환하지 않았습니다. 어떻게 할 수 있습니까?

분류에서Dev

하이픈을 UTF-8로 변환 할 수 없습니다.

분류에서Dev

UTF-8 파일의 특수 문자를 ANSI로 변환 할 수 없습니다.

분류에서Dev

16 진수를 UTF8로 변환하면 perl에서 예상대로 작동하지 않습니다.

분류에서Dev

UnicodeDecodeError : 'utf-8'코덱이 위치 3에서 0xa1 바이트를 디코딩 할 수 없습니다. 잘못된 시작 바이트입니까?

분류에서Dev

iocharset = utf8로 cifs를 마운트 할 수 없습니다.

분류에서Dev

iocharset = utf8로 cifs를 마운트 할 수 없습니다.

분류에서Dev

페이지 제목에 UTF-8로 인코딩 된 문자를 사용할 수 있습니까?

분류에서Dev

예외가 발생했습니다. UnicodeDecodeError 'utf-8'코덱이 위치에서 0xf1 바이트를 디코딩 할 수 없습니다.

분류에서Dev

=? gb2312 인코딩 문제 및 권장 사항

분류에서Dev

Perl utf-8에서 그리스어로 디코딩 할 수 없습니다.

분류에서Dev

Sphinx 'latin-1'코덱이 문자를 인코딩 할 수 없음 '-UTF-8을 사용하고 싶습니다.

분류에서Dev

잘못 인코딩 된 데이터를 UTF-8로 변환하는 방법은 무엇입니까?

분류에서Dev

혼합 인코딩 디렉토리에서 GBK를 UTF-8로 변환하는 방법은 무엇입니까?

분류에서Dev

ColdFusion으로 생성 된 XML 파일에서 UTF-8이 아닌 문자를 지원할 수 없습니다.

분류에서Dev

mysql에서 php로 utf-8 데이터를 구문 분석 할 수 없습니다.

분류에서Dev

DELPHI INDY-UTF8 인코딩 / 디코딩을 활성화하는 매개 변수를 찾을 수 없습니다.

Related 관련 기사

  1. 1

    Python : gb2312 코덱은 바이트를 디코딩 할 수 없습니다.

  2. 2

    GB2312 인코딩 된 MIME를 읽기 가능한 문자열로 변환

  3. 3

    Java의 입력 한자에서 GB2312 코드를 얻는 방법

  4. 4

    인코딩 오류가 발생하면 ascii-8bit를 utf-8bit로 변환 할 수 없습니다.

  5. 5

    csv를 UTF-8로 인코딩 할 수 없습니다.

  6. 6

    PHP를 사용하여 파일을 ANSI에서 UTF-8로 변환 할 수 없습니다.

  7. 7

    ASP : utf-8에서 iso-8859-1로 일부 문자를 디코딩 할 수 없습니다.

  8. 8

    인수 '1'에 대해 'int *'를 'int * (*) [9]'로 변환 할 수 없습니다.

  9. 9

    인코딩을 utf8로 변경할 수 없습니다.

  10. 10

    UTF-8 코드를 R에서 올바른 문자로 변환 할 수 있습니까?

  11. 11

    UTF8에서 ASCII로 변환 할 수 없습니다.

  12. 12

    Latin1로 인코딩 된 텍스트 필드를 UTF8로 변환하는 MySQL 함수

  13. 13

    Julia 인코딩 함수가 github 양식 base64 데이터를 UTF-8로 변환하지 않았습니다. 어떻게 할 수 있습니까?

  14. 14

    하이픈을 UTF-8로 변환 할 수 없습니다.

  15. 15

    UTF-8 파일의 특수 문자를 ANSI로 변환 할 수 없습니다.

  16. 16

    16 진수를 UTF8로 변환하면 perl에서 예상대로 작동하지 않습니다.

  17. 17

    UnicodeDecodeError : 'utf-8'코덱이 위치 3에서 0xa1 바이트를 디코딩 할 수 없습니다. 잘못된 시작 바이트입니까?

  18. 18

    iocharset = utf8로 cifs를 마운트 할 수 없습니다.

  19. 19

    iocharset = utf8로 cifs를 마운트 할 수 없습니다.

  20. 20

    페이지 제목에 UTF-8로 인코딩 된 문자를 사용할 수 있습니까?

  21. 21

    예외가 발생했습니다. UnicodeDecodeError 'utf-8'코덱이 위치에서 0xf1 바이트를 디코딩 할 수 없습니다.

  22. 22

    =? gb2312 인코딩 문제 및 권장 사항

  23. 23

    Perl utf-8에서 그리스어로 디코딩 할 수 없습니다.

  24. 24

    Sphinx 'latin-1'코덱이 문자를 인코딩 할 수 없음 '-UTF-8을 사용하고 싶습니다.

  25. 25

    잘못 인코딩 된 데이터를 UTF-8로 변환하는 방법은 무엇입니까?

  26. 26

    혼합 인코딩 디렉토리에서 GBK를 UTF-8로 변환하는 방법은 무엇입니까?

  27. 27

    ColdFusion으로 생성 된 XML 파일에서 UTF-8이 아닌 문자를 지원할 수 없습니다.

  28. 28

    mysql에서 php로 utf-8 데이터를 구문 분석 할 수 없습니다.

  29. 29

    DELPHI INDY-UTF8 인코딩 / 디코딩을 활성화하는 매개 변수를 찾을 수 없습니다.

뜨겁다태그

보관