【问题标题】:write.csv strange encoding in RR中的write.csv奇怪的编码
【发布时间】:2015-07-22 14:17:44
【问题描述】:

我遇到了一个我自己无法解决的非常奇怪的问题。

突然,write.csv 正在以一种无法在 libre office 中读取的方式对 csv 文件进行编码。 该命令一直有效,直到今天。现在,如果我尝试使用 write.csv(或更通用的等价 write.table),然后尝试使用 libre office 打开文件,我得到的只是一堆符号和亚洲字符。 我真的不明白这里发生了什么,似乎 write.csv 的默认编码已自行更改。 我今天所做的唯一不同的事情是读取一些使用程序 eprime 编码的文本文件,因此我必须使用以下命令来读取文件

A=read.delim("Pre_NewTask_Run1.txt", fileEncoding="UCS-2LE")

这是否可能改变了 write.csv 的默认编码?如果是这种情况,我该如何改回来?

提前感谢您的帮助

【问题讨论】:

    标签: r file-io encoding


    【解决方案1】:

    如果没有示例数据或可重现的代码,可能很难为您提供准确的答案。话虽如此,作为初始尝试,您可以尝试使用特定编码强制导出数据,例如代码:

    con<-file('filename',encoding="utf8")
    write.csv(...,file=con,...)
    

    将使您能够使用 utf-8 编码。您还可以运行l10n_info() 命令,该命令将为您提供有关您当前拥有的本地编码的信息:

    > l10n_info()
    $MBCS
    [1] FALSE
    
    $`UTF-8`
    [1] FALSE
    
    $`Latin-1`
    [1] TRUE
    
    $codepage
    [1] 1252
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-04-01
      • 1970-01-01
      • 2017-01-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-10-02
      相关资源
      最近更新 更多