如何在erlang中连接两个utf8字符串?

时间:2017-09-03 05:48:26

标签: unicode utf-8 erlang

我有两个变量如下:

A = <<"سعید"/utf8>>,
B = <<"حیدری"/utf8>>,

我如何连结AB

C = <<A/utf8, B/utf8>>.
上面的

行返回exception error: bad argument

1 个答案:

答案 0 :(得分:7)

utf8只是编码。它是二进制的任何其他二进制文件:

1> A = <<"سعید"/utf8>>,
1> B = <<"حیدری"/utf8>>,
1> C = <<A/bytes, B/bytes>>.
<<216,179,216,185,219,140,216,175,216,173,219,140,216,175,
  216,177,219,140>>
2> io:put_chars([C, $\n]).
سعیدحیدری
ok

P.S。:由于网络浏览器的行为,结果显示相反。它在控制台中以正确的顺序显示。