我想加入一些在下載過程中分割的二進制文件。該要求源於項目http://asproxy.sourceforge.net/。在這個項目中,作者允許你通過提供一個url來下載文件。加入已通過下載分割的二進制文件
問題出在我的服務器沒有足夠內存來保存大於20兆內存的文件。所以爲了解決這個問題,我修改了代碼,不下載大於10兆的文件,如果文件是更大的,它會允許用戶下載前10個兆字節。然後用戶必須繼續下載,並希望獲得第二個10兆。現在我已經得到了所有這些工作,除非用戶需要加入他們下載的文件時,我最終會得到損壞的文件,只要我可以通過下載來添加或刪除某些內容。
我目前通過閱讀所有的文件,然後將它們寫入一個文件,一起加入文件。這應該工作,因爲我正在讀取和寫入字節。我用來加入文件的代碼在這裏列出
我沒有確切的代碼與我atm,只要我在家我會發布確切的代碼,如果任何人願意幫忙。
請讓我知道,如果我錯過任何東西或者有更好的方法來做到這一點,即我可以用什麼作爲內存流的替代方案。我修改的原始項目的源代碼可以在這裏找到http://asproxy.sourceforge.net/download.html,應該指出我使用的是5.0版本。我修改的文件名爲WebDataCore.cs,我修改了第606行,直到10兆數據被載入繼續執行。
讓我知道是否有任何我錯過了。
感謝
謝謝,夥計,你的代碼看起來很完美,除了我不知道如何將我落實到項目這是在流並在數據被寫入了是對另一端的地方項目。我可以多求一點幫助嗎? – RC1140 2009-02-02 12:09:33
有什麼具體問題嗎? – 2009-02-02 12:54:18