我最近开始使用knitr :: spin()将我的代码快速转换为html报告,到目前为止它一直很棒。
但是,在尝试在文本或代码部分中包含中文字符时遇到了问题。这是一个简短的例子:
not_working.R
#' # Sample document
#'
#' Some text.
#' 还有汉字。
#+
print("Some text")
print("他喜欢吃炒面")
#'
要生成输出,我使用:
knitr::spin("not_working.R")
字符按以下方式扭曲:
Sample document
Some text.
杩樻湁姹夊瓧銆
print("Some text")
## [1] "Some text"
print("浠栧枩娆㈠悆鐐掗潰")
## [1] "<U+00E4><U+00BB>–<U+013A>–<U+015B><U+0107><U+00AC><U+02D8><U+013A>
<U+0090><U+0083><U+00E7><U+201A>’é<U+0165><U+02D8>"
我尝试过设置我的语言环境(在脚本内和.Rprofile中)。 这允许我在RStudio和控制台输出中显示字符,但不是在上面的情况下。
我也尝试过使用编码进行文件/保存 - &gt; UTF-8
我使用的是Windows 7。
如果我自己创建一个R笔记本(这似乎表明问题可能是.R到.md转换),则不会出现此问题。 以下工作正常:
working.Rmd
---
title: "R Notebook"
output: html_notebook
---
他喜欢吃炒面
```{r}
print("他喜欢吃炒面")
```
我的最终目标是导入一个(UTF-8编码的)文本文件,进行分析并显示中间结果,所有这些都在html报告中。
有没有办法解决这个问题?