我正在使用RCurl
下载.csv
文件,这些文件每天都上传到远程服务器,该服务器只能通过我公司的网络进行访问。我设法使用以下代码下载了测试文件:
path <- "sftp://myusername@123.45.6.78:910/my_folder/"
test <- "test_file.csv"
data <- getURI(url = paste0(path, test),)
port = 910,
userpwd = "myusername:.Pa55W0rD*")
今天,我尝试使用相同的方法下载 real .csv
文件之一,并遇到以下错误消息:
curlPerform中的错误(curl = curl,.opts = opts,.encoding = .encoding): 字符串中嵌入的nul:“ÐÏ\021ࡱ
我手动检查了文件,发现它具有多个字符,例如á,é,í,ó,ú。我相信这是因为我没有指定编码选项(UTF-8,LATIN1等)。
文件中的特殊字符是否引起了问题?如果是这样,如何在.encoding = encoding
中指定curlPerform()
参数,我应该使用什么编码参数?
编辑:我看到一个similar question,建议使用getBinaryURL()而不是getURI()。这样可以克服错误消息,但输出是大的原始数据,看起来与原始数据完全不同。