elixir的中文支持问题?

作者 laputa 所属板块 问答
1.windows环境下shell中文问题 erl-shell里面是可以输入"中文"的 但是iex里面输入"中文"或者'中文'都是会报错的 这个是否有解决方案?还是只能linux? 2.代码中的中文问题 在windows下如何输出中文? 把文件编码改为utf-8, 程序可以运行,但是输出的是乱码(重定向到文件看是可以的,utf8格式的) IO.puts "你好,中文!" 3.在test文件中 test "中文" do 这样不行,在linux下也不可以, test/cli_test.exs:18: warning: this expression will fail with ArgumentError ** (ArgumentError) argument error test/cli_test.exs:18: (module) (stdlib) erl_eval.erl:670: :erl_eval.do_apply/6
2 回复
  • tony612 发表
    1. 在 mac 下应该是没问题的 2. 怀疑还是 windows 的问题 3. 这个是 erlang 现在还不支持,代码里就用英文写好了。原因是因为 http://erlang.org/doc/man/erlang.html#binary_to_atom-2 > binary_to_atom(Binary, utf8) fails if the binary contains Unicode characters > 255. In a future release, such Unicode characters can be allowed and binary_to_atom(Binary, utf8) does then not fail.
  • fanspace 发表
    中文windows的CMD,是 GBK编码的。