很容易将一个字符转换为二进制:
>> c: #"^(52)"
== #"R"
>> type? c
== char!
>> b: to-binary c
== #{52}
但是如果我想走另一条路呢?
>> c: to-char b
** Script Error: Invalid argument: #{52}
** Where: to-char
** Near: to char! :value
转换为字符串,然后从字符串中提取第一个字符:
>> first to string! #{c3b6}
== #"ö"
请注意,这将二进制解码为UTF-8 (Rebol 3中使用的默认Unicode编码)。
您最初的问题是关于Rebol 3,其中to-char
在binary!
上工作
>> c: #"^(52)"
== #"R"
>> type? c
== char!
>> b: to-binary c
== #{52}
>> c: to-char b
== #"R"
>> system/version
== 2.101.0.3.1