r中UTF-8字节的特殊字符

时间:2017-07-05 12:15:43

标签: r utf-8

我正在处理一个文本向量,其中包含奇数字符,例如: íãú等。

我正在使用api将它们从葡萄牙语翻译成英语,但问题是API的编码更喜欢它是UTF-8十六进制编码。这意味着我发送的文本需要如下:

Província: Prov%C3%ADncia

我可以在R中使用iconv,方式如下:

iconv("Província", "UTF-8", sub = "byte")
[1] "Prov<ed>ncia"

但它提供了不同的结果。在R中有办法做到这一点吗?

1 个答案:

答案 0 :(得分:1)

要阅读您需要的特殊字符:

x <- enc2utf8(as("Província", "character"))
y <- iconv("Província", "LATIN2", "UTF-8")
[1] "Província"

Encoding(x) <- "bytes"
Encoding(y) <- "bytes"
cat(y,"\n");cat(x)

> Prov\xc3\xadncia 
> Prov\xc3\xadncia