我想直接从 R 中的 URL 读取长度不确定的二进制文件。使用readBin
从 URL 读取,而不指定文件大小,不起作用。
anImage <- readBin('http://user2010.org/pics/useR-large.png','raw')
是否有另一种方法可以做到这一点?
我想直接从 R 中的 URL 读取长度不确定的二进制文件。使用readBin
从 URL 读取,而不指定文件大小,不起作用。
anImage <- readBin('http://user2010.org/pics/useR-large.png','raw')
是否有另一种方法可以做到这一点?
这会将文件下载到工作目录,但不会直接下载到内存中。
download.file('http://user2010.org/pics/useR-large.png', 'anImage.png')
Rcurl 包也可以做你想做的事。(由于 SO 限制,链接未发布)
一个简单的解决方案是将“n”设置为相当大,读取文件,检查可能的溢出,并在必要时重试。
N <- 1e7
repeat
{
anImage <- readBin(filename, 'raw', n=N)
if(length(anImage) == N) N <- 5 * N else break
}