r - 编码 hell 德语特殊字符

标签 r encoding rstudio statet

在 StatET eclipse 以及我设置的 RStudio 中

options(encoding = "ISO-8859-1")

在 StatET 我有:
Sys.getlocale()
[1] "LC_COLLATE=German_Germany.1252;LC_CTYPE=German_Germany.1252;LC_MONETARY=German_Germany.1252;LC_NUMERIC=C;LC_TIME=German_Germany.1252"

在 RStudio 中相同:
Sys.getlocale()
[1] "LC_COLLATE=German_Germany.1252;LC_CTYPE=German_Germany.1252;LC_MONETARY=German_Germany.1252;LC_NUMERIC=C;LC_TIME=German_Germany.1252"

所有在同一时间运行的同一台计算机上,但使用相同的输入(在两种情况下直接输入到控制台),我得到不同的结果。

工作室:
strsplit("GRÜN", "")
[[1]]
[1] "G" "R" "Ü" "N"

状态:
strsplit("GRÜN", "")
[[1]]
[1] "G" "R" "Ã" " "N"

问:除了设置Sys.setlocale()还需要做什么?和 encoding使两个系统产生相同的结果?

最佳答案

我不是这方面的专家,但如果您使用的是 Windows,我怀疑这是系统语言环境。在这种情况下,请转到:
控制面板 -> 区域和语言 -> 管理 -> 更改系统区域设置 [对于非 Unicode 程序]

我已经在我的计算机上设置了可以使用俄语的所有内容,这完全没有问题,但是当我尝试使用您的代码时,我得到了这个:

Sys.setlocale("LC_CTYPE","german")
strsplit("GRÜN", "")
[[1]]
[1] "G" "R" "Ь" "N"

很明显,Rstudio 混淆了元音变音和俄语软符号,这是 Windows 经常做的事情。

关于r - 编码 hell 德语特殊字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17945740/

相关文章:

多个操作系统上的 RMarkdown utf-8 错误

r - 在 RStudio 中将 RMarkdown 编织为 PDF 时 Pandoc 的环境 cslreferences 未定义

R:将 dplyr group_by 与 ggplot2 结合使用并更改每个组的标题

php - 编码冲突: php output corrupted by html <head> content

java - Spring 和 PostgreSQL 之间的错误编码

anaconda - Rstudio 不是从 anaconda 启动的

r - 1 :10 and c(1:10) 之间的差异

r - 交叉何时以及为何对差异进化有益?

r - 矢量化 seq 的优雅方式?

.net - 字符编码问题 - PHP 输出,由 .NET 通过 HttpWebRequest 读取