AFAIK,OCaml中的字符串只是简单的字节序列。他们没有编码的概念。
这适用于大多数用途。但是,某些标准库假设有关字符串在单字节字符集中编码,例如printf
的对齐功能:
# printf "[%4s]\n[%4s]\n" "a" "à";;
[ a]
[ à]
- : unit = ()
是否有正确处理此问题的升级版printf
,例如通过查看LANG和LC_ *来猜测终端上使用的编码? (我正在使用Core)
答案 0 :(得分:3)
如果您需要打印UTF-8数据,可以使用Uuseg
的{{3}}。