English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
앞章节에서 이미 Ruby로 "Hello, World!"를 출력하는 방법을 배웠습니다. 영어는 문제가 없지만 중국어 문자 "你好,世界"를 출력하면 중국어 인코딩 문제가 발생할 수 있습니다.
Ruby 파일에编码이 지정되지 않으면 실행 중 오류가 발생합니다:
#!/usr/bin/ruby -w puts "안녕하세요, 세상!";
위의 프로그램 실행 결과는 다음과 같습니다:
invalid multibyte char (US-(ASCII)
위의 오류 메시지는 Ruby가 ASCII编码으로 소스 코드를 읽는다고 보여주며, 중국어는 깨지게 됩니다. 해결 방법은 파일의 초-head에 추가하기만 하면 됩니다 # -*- coding: UTF-8 -*-(EMAC 작성법) 또는 #coding=utf-8 만들면 됩니다。
#!/usr/bin/ruby -w # -*- coding: UTF-8 -*- puts "안녕하세요, 세상!";
출력 결과는 다음과 같습니다:
안녕하세요, 세상!
따라서 많은 사람들이 학습 과정에서 소스 코드 파일에 중국어编码이 포함되면 주의해야 할 두 가지 점이 있습니다: