R,Rstudio控制台编码Windows

我有一种方法来改变Rstudio在Windows上的控制台编码

这不是读取特定编码中的文件或采购脚本,而是关于更改控制台编码(编码Sys.getlocale产量)。

这通常不是一个大问题,但我尝试创build一个包,并在一些string和符号中使用德语变音符号。 roxygen2最适合UTF-8编码,但如果源文件不在控制台/系统编码中,则covr会发出错误。

(如果有对roxygen2covr问题的解决方法,这也将有所帮助。添加信息:我从控制台调用covr::package_coverage ,并通过Rstudios Build命令调用roxygen2

和sessioninfo:

 sessionInfo() # R version 3.4.2 (2017-09-28) # Platform: x86_64-w64-mingw32/x64 (64-bit) # Running under: Windows >= 8 x64 (build 9200) # # Matrix products: default # # locale: # [1] LC_COLLATE=German_Austria.1252 LC_CTYPE=German_Austria.1252 LC_MONETARY=German_Austria.1252 LC_NUMERIC=C LC_TIME=German_Austria.1252 

更新:通过Rstudio中的文件find产生错误的函数,使用devtools::load_all(".")加载,RStudio gui给出错误/错误的编码。

Solutions Collecting From Web of "R,Rstudio控制台编码Windows"

如果您问如何在Windows上将语言环境更改为支持UTF-8的语言环境,则答案是不可以

当你调用Sys.setlocale ,R将调用setlocale系统函数。 不幸的是,没有办法为字符类型( LC_CTYPE )指定UTF-8。 请参阅https://stackoverflow.com/a/4336010/6233565

可以做的是将语言环境改为https://msdn.microsoft.com/library/windows/desktop/dd373814.aspx中描述的语言环境之一。 例如,要更改为Windows-1251,请执行

 Sys.setlocale("LC_CTYPE", ".1251") 

希望在未来的某个时候,您将能够在Windows上编写UTF-8编码的数据。 目前,这是不可能的。 所有输出都通过本地语言环境: https : //stat.ethz.ch/pipermail/r-devel/2017-June/074556.html