R不支持从“ CP1,254”到“”的转换

时间:2018-10-15 11:12:27

标签: r rstudio

我正在R studio上编写程序。我的程序在R studio上运行良好,但是,当我尝试使用.bat命令运行它时,出现了以下错误:

  

文件错误(文件名,“ r”,编码=编码):不受支持   从'CP1,254'转换为''调用:runApp ... sourceUTF8-> eval   -> eval-> ..stacktraceon ..->源->文件执行暂停

整个run.r.Rout文件可在下面找到:

> require(shiny)
Loading required package: shiny
> folder_address = '~//app_v2'
> runApp(folder_address, launch.browser = TRUE)

Attaching package: 'dplyr'

The following objects are masked from 'package:stats':

    filter, lag

The following objects are masked from 'package:base':

    intersect, setdiff, setequal, union

Warning: package 'lubridate' was built under R version 3.4.4

Attaching package: 'lubridate'

The following object is masked from 'package:base':

    date

Error in file(filename, "r", encoding = encoding) : 
  unsupported conversion from 'CP1,254' to ''
Calls: runApp ... sourceUTF8 -> eval -> eval -> ..stacktraceon.. -> source -> file
Execution halted

我在这里错过了什么吗?解决方案必须简单,但我无法解决。这可能与lubridate包使用有关吗?同样,我的程序在R studio上运行良好,但是在终端上运行时却报错。

任何帮助将不胜感激。提前致谢。

1 个答案:

答案 0 :(得分:1)

该代码的某些部分似乎认为您当前的文件编码为"CP1,254",这不是真正的编码。您可以查看R关于使用iconvlist()所知道的编码的完整列表。在我的系统上,包括"CP1254", 即“代码页1254”,在Windows上以土耳其语区域设置使用。

因此,您需要弄清楚逗号的来源。也许有些代码查询代码页,并插入formatC样式的big.mark