ykominami
6/30/2018 - 1:35 AM

Ruby Encoding #memo #ruby #encoding

Ruby Encoding #memo #ruby #encoding

Ruby Encoding

# Ruby(Windows)
Windows_31J
CP932
CSWINDWOS31J
CsWindows31J
WINDOWS_31J
PCK
SJIS

Windows-31J、Windows で用いられる、シフトJIS亜種で、CP932とも言います。 

7bit 部分が論理的には US-ASCIIであり、また Windows の機種依存文字を扱うことができます。 

# Ruby(EUC_JP)
EUC_JP
EcuJP
EUCJP

IANA Character Sets にある EUC-JP のことです。 

日本語 EUC 亜種で、G0 が US-ASCII、G1 が JIS X 0201 片仮名図形文字集合、G2 が JIS X 0208、G3 が JIS X 0212 となっています。 EUC-JP を指定する場合は、それが実際には CP51932 のことである可能性を考えなければなりません。

# Ruby(EUCJP_MS)
EUCJP_MS
EucJP_ms
EUC_JP_MS

eucJP-ms、Unix 系で用いられる、日本語 EUC 亜種です。 

EUC-JPに加え、Windowsの機種依存文字とユーザ定義文字を扱うことができます。 

# Ruby(ISO2022)
ISO_2022_JP
ISO2022_JP

ISO 2022-JP エンコーディングです。 

# Ruby(ISO2022JP2)
ISO_2022_JP_2
ISO2022_JP2

ISO-2022-JP-2 エンコーディングです。

# Ruby(UTF8)
UTF_8
CP65001

UTF-8、Unicode や ISO 10646 を ASCII 互換な形で符号化するための方式です。 

BOM を含みません

#Ruby(UTF8_MAC)
UTF8_MAC
UTF_8_MAC
UTF_8_HFS

UTF8-MAC、アップルによって修正された Normalization Form D(分解済み)という形式のUTF-8です。

# Ruby(UTF16)
UTF_16

UTF-16 (BOMを含む) です。 

ダミーエンコーディングです。

# Ruby(UTF16LE)
UTF_16LE

UTF-16LE (リトルエンディアン) です。 

BOM を含みません。 

# Ruby(UTF32)
UTF_32

UTF-32 (BOMを含む) です。 

ダミーエンコーディングです。