2016-08-15 68 views
0

我在Windows環境中使用R。當我使用sink將輸出指向文件時,我無法將編碼設置爲UTF-8。使用UTF-8編碼的接收器

sink("Umlaute.tex", append=FALSE, split=TRUE) 
cat("ÄÖÜäöüß") 
sink() 

如何將輸出編碼設置爲UTF-8?

+0

您是否在使用RStudio?如果你喜歡,你是否可以更新你的版本;最近的一個版本改進了對UTF-8的支持,所以它可能就是導致問題的原因。 – Phil

+0

我正在使用RStudio 0.99.903和R3.3.1。 RStudio的文件編碼設置爲UTF-8,與我所有的Latex文件相同。這就是爲什麼我想通過接收器使用R的輸出也是UTF-8格式。 –

回答

1

您可以先使用正確的編碼打開一個連接,然後沉入該連接。這也允許更多的控制如何打開文件。

con <- file("Umlaute.tex", open = "wt", encoding = "UTF-8") 
sink(con, split = T) 
cat("ÄÖÜäöüß") 
sink() 
close(con)