2013-03-06 71 views
17

我想下载一个Excel工作簿使用R的download.file函数。R Download.File问题与Excel工作簿

当我手动下载文件(使用Internet Explorer或Chrome,右键点击&另存为),然后文件下载,然后我可以在Excel中打开它,没有任何问题。

当我在R中使用download.file时,文件下载并报告正确的文件大小。但是,当我然后尝试在Excel 2010中打开下载的xls文件时,我收到以下错误消息:

Excel在'test.xls'中发现不可读的内容。你想恢复这个工作簿的内容吗?如果您信任此工作簿的来源,请单击是。

当我点击是时,没有任何反应。

我也尝试直接使用R包xlsx访问文件,这也失败了。

+1

您是否试图通过在'download.file'中添加'mode =“wb”'来以二进制模式下载它? – juba 2013-03-06 14:58:35

+0

我没有,但我现在和它的工作!如果你把你的评论作为答案,我会接受。 – Tumbledown 2013-03-11 08:58:31

+0

不错,它的工作原理。我刚刚添加了一个答案。 – juba 2013-03-11 09:01:57

回答

33

您可以尝试使用mode参数以二进制模式下载文件(默认为download.file是ASCII模式)。类似于:

download.file(myurl, mydestfile, mode="wb")