我有一个 UTF-8 编码的文本文件,每行一个标记。我想把它读成向量。这是在 MSWindows 版本 3.0.1 上。我知道默认编码是 UTF-8,对吧?
我正在寻找类似的代码片段
http://www.mayin.org/ajayshah/KB/R/html/r4.html
来自“R 示例”
http://www.mayin.org/ajayshah/KB/R/index.html
但是他们没有 UTF-8 示例,只有 ASCII。
我有一个 UTF-8 编码的文本文件,每行一个标记。我想把它读成向量。这是在 MSWindows 版本 3.0.1 上。我知道默认编码是 UTF-8,对吧?
我正在寻找类似的代码片段
http://www.mayin.org/ajayshah/KB/R/html/r4.html
来自“R 示例”
http://www.mayin.org/ajayshah/KB/R/index.html
但是他们没有 UTF-8 示例,只有 ASCII。
您可以使用 read.table() 读取它,然后将列提取为向量,或者使用 scan()。
vect <- scan(file="path/to/file1.txt", what=character(0) )
您不需要使用 UTF-8 作为编码,因为您知道它是默认值,但是可以选择这样做:
vect <- scan(file="path/to/file1.txt", what=character(0), encoding="UTF-8" )
R 3.0.0 的 NEWS 文件说:
" o UTF-8 语言环境中的 readLines() 和 scan()(因此 read.table())现在丢弃 UTF-8 字节顺序标记 (BOM)。Unicode 标准允许但不推荐此类 BOM :但是 Microsoft 应用程序可以生成它们,因此有时可以在网站上找到它们。
连接的编码名称“UTF-8-BOM”将确保丢弃 UTF-8 BOM。"
因此,可能需要 encoding 参数表明您使用的是非 UTF-8 语言环境并且没有告诉我们,或者您使用的是过时的 R 版本?