在R中显示从MySQL检索的日文字符

时间:2014-09-03 01:11:34

标签: mysql r unicode utf-8

我正在努力在数据框中显示日文字符,这些数据框是使用RMySQL包从MySQL数据库中检索到的。如果我将数据库中的字符串粘贴到变量中,然后具有编码'UTF-8',则日文字符显示正常。数据帧列的编码是“未知”,我还没有设法使用iconv进行更改。

数据库的一行是:

1.00    20120801    4520000000000.00    1.00    379.00  142.00  北日本フード スーパー極上キムチ 330g

检索使用:

rs <- dbSendQuery(con, "select * from sales");
data <- fetch(rs, n=-1)

第一行数据:

1     1 20120801 4.52e+12        1   379    142 ?????????????????????\r

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:10)

通过在检索数据之前添加以下行来解决问题:

rs <- dbSendQuery(con, 'set character set "utf8"')

答案 1 :(得分:0)

当尝试使用utf8 / utf8mb4时,如果您看到问号(常规问号,而不是黑色钻石),

  • 要存储的字节不编码为utf8。解决这个问题。
  • 数据库中的列为{{1}}(或utf8mb4)。解决这个问题。
  • 另外,检查读取期间的连接是否为utf8。