为什么我需要将mode=wb与download.file()一起用于这个.rds文件?

为什么我需要将mode=wb与download.file()一起用于这个.rds文件?,r,download,R,Download,我挂断了,因为我无法打开countries.rds文件readRDS()抛出:从连接读取时出错 我想如果我用download.file(URL,dest,mode=“wb”)下载.rds或者只是用浏览器将文件下载到本地目录,我就可以很好地打开.rds了 悬而未决的问题:如果我在未设置mode=“wb”的情况下使用download.file(),为什么countries.rds文件无法正常打开?我希望答案是显而易见的,比如:“嗯,countries.rds是一个二进制文件。”然而,在我尝试回答我自

我挂断了,因为我无法打开
countries.rds
文件
readRDS()
抛出:
从连接读取时出错

我想如果我用
download.file(URL,dest,mode=“wb”)
下载
.rds
或者只是用浏览器将文件下载到本地目录,我就可以很好地打开
.rds

悬而未决的问题:如果我在未设置
mode=“wb”
的情况下使用
download.file()
,为什么
countries.rds
文件无法正常打开?我希望答案是显而易见的,比如:“嗯,
countries.rds
是一个二进制文件。”然而,在我尝试回答我自己的问题之前,我希望有更多经验的人确认一下

复制步骤:

    download.file("http://shiny.rstudio.com/tutorial/lesson5/census-app/data/counties.rds",
    "counties.rds")

    counties <- readRDS("counties.rds")
    Error in readRDS("counties.rds") : error reading from connection

我的建议是无论如何都要指定“mode”,并且始终使用mode=“wb”是非常安全的。我认为后者应该是默认的,并且通过文件扩展名自动识别是错误的,不应该依赖于此,参见。

,可能是因为“.rds”文件不是文本而是二进制文件。
    download.file("http://shiny.rstudio.com/tutorial/lesson5/census-app/data/counties.rds",
    "counties.rds", mode = "wb")
    counties <- readRDS("counties.rds") # Success!