2016-12-01 28 views
0

這是我第二次在線搜索download.file的幫助,並通過調用mode參數解決了我的問題,但我不知道是什麼原因或何時/爲什麼要使用它們。剛剛看到了這個建議並通過了這個觀點來解決我的問題。download.file的mode =參數有什麼作用?

上download.file將R幫助文件()是有點過於簡略和劑量沒有告訴我什麼時候使用特定模式

模式字符。用於寫入文件的模式。有用的值是 「w」,「wb」(二進制),「a」(附加)和「ab」。僅用於「內部」 方法。 (另見'細節'。)

爲了讓我得到正確答案,我不得不通過下面的mode =「wb」;但是爲什麼(可能與https中的s有關,或者我現在只需要嘗試和錯誤)。

fileUrl <-"https://d396qusza40orc.cloudfront.net/getdata%2Fjeff.jpg" 
download.file(fileUrl, destfile = "./data/leekjpg.jpg", mode="wb") 

我想獲得至少download.file的方法和模式爭論的一些基本的瞭解,請你解釋或暗示的讀取。

我正在下載更多的文件,它讓我困擾,我不知道何時傳遞一些相關的參數。

回答

1

這就是文檔說:

如果沒有提供模式和。廣州,操作.bz2,.xz,.tgz的, .ZIP,.rda或.RData中的某一個網址結束二進制傳輸完成。由於Windows(不像 與Unix類似)區別文本文件和二進制文件,所以需要注意的是 其他二進制文件類型以mode =「wb」傳輸。 unix進度條跟蹤傳輸。如果文件長度已知, 等號代表完成傳輸的2%:否則 點代表10Kb。代碼寫入到下載的二進制文件必須使用 模式=「WB」,而是通過文本傳輸所產生的問題將只 看到窗口

基本上它是說,"w""wb"使用上時是相同的類似於Unix的操作系統,因爲它們不區分文本和二進制文件,但Windows可以。

在Windows中,行結尾稍有不同。爲了安全起見,我打開文本文件時使用「w」,其中"wb"當文件不應該是文本時,如jpg

+0

感謝您的意見,您的建議加上這裏的內容:https://rpubs.com/thoughtfulbloke/downloadtips – Bhail

相關問題