Elixir:将整数转换为unicode字符

时间:2016-12-24 14:12:45

标签: string unicode elixir

我想迭代Unicode给出的Elixir中的中文字符集。我阅读了文档并说它可以使用'?'运算符将代码点作为整数获取,然后可以递增它。现在我只需要做反向,从代码点到整数。有一个简单的方法吗?我没找到任何。例如,在Python中你会做

#include <iostream>
#include <cmath>
#include <math.h>
using namespace std;


int reversedArray(int* x)
{
   if( *x != 0 ){
       reversedArray( x+1  );
   }

   cout<<*x << "  "  ;
}


int main ()
{
    int Array[] = {10,2,3,4,8 ,0} ;   // I use '0' entry, as the EOF of this array. I dont want it to be printed.
    int* p_Array = Array;
    reversedArray( Array );
}

1 个答案:

答案 0 :(得分:4)

Elixir中没有字符数据类型,但要将代码点转换为包含该字符的字符串(编码为UTF-8),您可以使用<<x::utf8>>List.to_string([x])

iex(1)> x = ?一 + 1
19969
iex(2)> <<x::utf8>>
"丁"
iex(3)> List.to_string([x])
"丁"