在R中编写html - 字符编码问题

时间:2016-05-18 10:57:01

标签: html r

我想从R输出html,并且遇到特定字符的问题。为了说明,一个函数:

output = function(str, fn){ sink(fn); cat(str); sink(); browseURL(fn) }
output("It's an apostrophe", 'good.html')

enter image description here

output("It’s a right single quote", 'bad.html')

enter image description here

感谢任何不需要临时角色替换的一般解决方案的提示。

1 个答案:

答案 0 :(得分:2)

您没有在HTML文件中指定编码,因此浏览器猜测 - 严重 1 。这是文本数据的一般问题,但对于HTML,有一个简单的解决方案:在HTML中指定编码;例如:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
    </head>
    <body>
        It’s a right single quote
    </body>
</html>

...并将此文本写为UTF-8文件:

output = function (str, filename) {
    file = file(filename, encoding = 'UTF-8')
    on.exit(close(file))
    cat(str, file = file)
    browseURL(filename)
}

1 虽然这取决于很多因素:在我的电脑上,你的代码恰好起作用。