我正在編寫一個應用程序,下載大量的json數據(例如每天20GB,每次嘗試成千上萬2-3Mb),但商店只有它的0.001%。WebClient在哪裏存儲他下載的數據?
我想知道它在哪裏存儲臨時數據,它將其保存在硬盤上還是存儲在RAM中?
如果將數據存儲在硬盤上,我可以更改它放置數據的位置嗎?
我正在編寫一個應用程序,下載大量的json數據(例如每天20GB,每次嘗試成千上萬2-3Mb),但商店只有它的0.001%。WebClient在哪裏存儲他下載的數據?
我想知道它在哪裏存儲臨時數據,它將其保存在硬盤上還是存儲在RAM中?
如果將數據存儲在硬盤上,我可以更改它放置數據的位置嗎?
它將所有內容存儲在RAM中。您可以反編譯或參考reference sources。
我覺得DownloadBits
方法是很好的起點。
如果您使用WebClient.DownloadFile,則此方法的第二個參數讓您指定存儲文件的位置。 如果您使用WebClient.DownloadData,您將獲得需要保留的以字節爲單位的數據。 WebClient.DownloadString與您可以持續使用JSON的字符串類似。
我正在使用WebClient.DownloadString並下載每個嘗試3兆字節。它在哪裏去,RAM或一些臨時文件在硬盤上? –
不知道API,有點難以分辨流與阻塞。默認情況下,下載字符串應該返回所有的呼叫響應。如果您希望以塊的形式接收數據,那麼DownloadStringAsync或基於任務的替代方案可能會更有幫助。 – Perpetualcoder
DownloadString將數據存儲在RAM中,未使用HDD上的任何臨時文件。 – Evk