UTF-8 文字列を C/POSIX ロケール文字列に変換しようとしています
UTF-8 文字列は "abc123£" (bash では "abc123\302\243"`) です
- iconv_open("", "UTF-8"); // "" はデフォルトのプログラム ロケール、つまり C を意味します
- iconv_open("UCS-2LE", "UTF-8");
iconv() は、ケース 1 では EILSEQ を返していますが、ケース 2 では成功しています。
これの理由は何ですか?
また、UTF-8 文字列を「C」ロケール文字列に正常に変換するにはどうすればよいですか。