10.1.3 인코딩(Encoding)
10.1.3 인코딩(Encoding)
일부 타깃에서 내부 표현은 UTF-16인데, 이는 non-BMP Unicode 코드포인트가 서러게이트 쌍으로 표현된다는 뜻입니다. 타깃이 내부적으로 UTF-16을 사용할 때 컴파일 타임 정의 target.utf16이 설정됩니다.
문자열의 null 바이트(Null-bytes in strings)
일부 Haxe 타깃은 문자열에서 null 바이트(Unicode 코드포인트 0)를 허용하지 않습니다. 또한 일부 Haxe 핵심 API는 null 바이트가 문자열을 종료한다고 가정합니다. null 바이트를 포함한 이진 데이터를 일관되게 다루려면 haxe.io.Bytes API를 사용하세요.
타깃 세부 사항(Target details)
| 타깃 | target.unicode |
target.utf16 |
내부 인코딩 | null 바이트 허용 |
|---|---|---|---|---|
| Flash | yes | yes | UTF-16 | no |
| JavaScript | yes | yes | UTF-16 | yes(일부 구형 브라우저 제외) |
| C++ | yes | yes | ASCII 또는 UTF-16(필요 시) | yes |
| Java | yes | yes | UTF-16 | yes |
| JVM | yes | yes | UTF-16 | yes |
| C# | yes | yes | UTF-16 | yes |
| Python | yes | no | Latin-1, UCS-2, 또는 UCS-4 (PEP 393 참조) | yes |
| Lua | yes | no | UTF-8 | yes |
| PHP | yes | no | binary | yes |
| Eval | yes | no | UTF-8 | yes |
| Neko | no | no | binary | yes |
| HashLink | yes | yes | UTF-16 | no |
출처: Encoding