相关疑难解决方法(0)

无法将unicode .csv读入R

我有一个.csv文件,其中包含以下数据:

"?","?"
1,10
2,20
Run Code Online (Sandbox Code Playgroud)

我无法将其读入R中,以便列名显示在文件中.

d <- read.csv("./Data/1.csv", fileEncoding="UTF-8")
head(d)
Run Code Online (Sandbox Code Playgroud)

产生以下内容:

> d <- read.csv("./Data/1.csv", fileEncoding="UTF-8")
Warning messages:
1: In read.table(file = file, header = header, sep = sep, quote = quote,  :
  invalid input found on input connection './Data/1.csv'
2: In read.table(file = file, header = header, sep = sep, quote = quote,  :
  incomplete final line found by readTableHeader on './Data/1.csv'
> head(d)
[1] X.
<0 rows> (or 0-length row.names)
Run Code Online (Sandbox Code Playgroud)

同时,在不指定fileEncoding的情况下执行相同操作会产生以下结果:

> d <- read.csv("./Data/1.csv")
> head(d)
  Ô. …
Run Code Online (Sandbox Code Playgroud)

windows csv r utf-8 read.table

21
推荐指数
2
解决办法
2万
查看次数

在R中将UTF-8 BOM导出到.csv

我正在从MySQL数据库通过RJDBC读取文件,它正确显示R中的所有字母(例如,נווהשאנן).但是,即使使用write.csv和fileEncoding ="UTF-8"导出它,输出看起来像 <U+0436>.<U+043A>. <U+041B><U+043E><U+0437><U+0435><U+043D><U+0435><U+0446>(在这种情况下,这不是上面的字符串而是保加利亚字符串),用于保加利亚语,希伯来语,中文等等.其他特殊字符,如ã,ç等工作正常.

我怀疑这是因为UTF-8 BOM,但我没有在网上找到解决方案

我的操作系统是德语Windows7.

编辑:我试过了

con<-file("file.csv",encoding="UTF-8")
write.csv(x,con,row.names=FALSE)
Run Code Online (Sandbox Code Playgroud)

和(afaik)等价物write.csv(x, file="file.csv",fileEncoding="UTF-8",row.names=FALSE).

byte-order-mark r utf-8 export-to-csv

9
推荐指数
2
解决办法
5941
查看次数

读取多语言文件 - wchar_t vs char?

了解 unicode、语言环境、宽字符和转换对我来说是一次可怕的经历。

我需要读取包含俄语和英语,中国和乌克兰字符的文本文件一次全部

我的方法是以字节块读取文件,然后对块进行操作,在单独的线程上进行快速读取。(关联)

这是使用 std::ifstream.read(myChunkBuffer, chunk_byteSize)

但是,我知道如果我坚持使用char.


就此而言,我将一切都转化wchar_t为最佳状态并希望得到最好的结果。

我也知道Sys.setlocale(locale = "Russian") (链接),但它不是将每个字符解释为俄语吗?当我解析字节时,我不知道何时在我的 4 种语言之间切换。

在 Windows 操作系统上,我可以创建一个 .txt 文件并写上“??????!你好!” 在程序 Notepad++ 中,它将保存文件并以相同的字母重新打开。它是否以某种方式在每个字符后秘密添加隐形标记,以了解何时解释为俄语,何时解释为英语?


我目前的理解是:将所有内容都作为wchar_t(双字节),将任何文件解释为 UTF-16(双字节) - 是否正确?

另外,我希望保持代码跨平台。

对不起菜鸟

c++

3
推荐指数
1
解决办法
1883
查看次数

标签 统计

r ×2

utf-8 ×2

byte-order-mark ×1

c++ ×1

csv ×1

export-to-csv ×1

read.table ×1

windows ×1