无法使用 Rstudio 在控制台中正确编码中文
Can't encode chinese properly in console using Rstudio
我正在使用 RODBC
将 mysql
与 R 连接起来,如下所示:
library(RODBC)
channel=odbcConnect("MySQL_ODBC_AIRFORECASTSYSTEM",uid="root",pwd = "3896123ray")
sql="select * from region_station"
ttt=sqlQuery(channel,query = sql)`
ss你看我把结果放到了data.frame,"ttt",可以用View(ttt)
显示contain,中文显示正常.
然而,当我使用 ttt[,2]
试图在控制台中显示第二列时,它变成了这样:
如有任何帮助,我们将不胜感激。
第一列是中文,第二列是mysql的hex()的结果,第三列是Rstudio控制台的结果
二林站E4BA8CE69E97E7AB99∭\x9e\xab\x99
南投站E58D97E68A95E7AB99 \xe5\x8d\x8a\xab\x99
裴里站E59F94E9878CE7AB99 \xe5\x9f\x87\xab\x99
大里站E5A4A7E9878CE7AB99憭折\x87\xab\x99
轰化站E5BDB0E58C96E7AB99收纳\x8c\xab\x99
忠明站E5BFA0E6988EE7AB99敹\x98\xab\x99
950好像是Big5。例如
CONVERT(BINARY('大里站') USING big5) --> 憭折
这与您的转储之一一致。
所以...
SET NAMES big5;
(或者您从 Rstudio 指定 CHARACTER SET
到 MySQL)
或将 LC 值更改为 utf8。
我正在使用 RODBC
将 mysql
与 R 连接起来,如下所示:
library(RODBC)
channel=odbcConnect("MySQL_ODBC_AIRFORECASTSYSTEM",uid="root",pwd = "3896123ray")
sql="select * from region_station"
ttt=sqlQuery(channel,query = sql)`
ss你看我把结果放到了data.frame,"ttt",可以用View(ttt)
显示contain,中文显示正常.
然而,当我使用 ttt[,2]
试图在控制台中显示第二列时,它变成了这样:
如有任何帮助,我们将不胜感激。
第一列是中文,第二列是mysql的hex()的结果,第三列是Rstudio控制台的结果
二林站E4BA8CE69E97E7AB99∭\x9e\xab\x99
南投站E58D97E68A95E7AB99 \xe5\x8d\x8a\xab\x99
裴里站E59F94E9878CE7AB99 \xe5\x9f\x87\xab\x99
大里站E5A4A7E9878CE7AB99憭折\x87\xab\x99
轰化站E5BDB0E58C96E7AB99收纳\x8c\xab\x99
忠明站E5BFA0E6988EE7AB99敹\x98\xab\x99
950好像是Big5。例如
CONVERT(BINARY('大里站') USING big5) --> 憭折
这与您的转储之一一致。
所以...
SET NAMES big5;
(或者您从 Rstudio 指定 CHARACTER SET
到 MySQL)
或将 LC 值更改为 utf8。