2016-08-30 44 views
-2

我有一個4千兆字節的文本文件上傳到服務器上。我使用這個代碼如何在線壓縮TEXT文件?

WebRequest request = WebRequest.Create("http://www.UrlToDownloadStringFrom.com"); 
WebResponse response = request.GetResponse(); 
Stream stream = response.GetResponseStream(); 
StreamReader streamReader = new StreamReader(stream); 

// the result should return "firstWord~:::~secondWord" as expected. 
string result = streamReader.ReadToEnd(); 

// split the string apart whenever the string ~:::~ appears within it. 
string[] resultSplit = result.Split(new string[] { "~:::~" }, StringSplitOptions.None); 

// resultSplit[0] is firstWord, resultSplit[1] is second word 
string secondWord = resultSplit[1]; 

到逐行讀取文本文件中的行和~:::~

之間 分裂它反正是有壓縮的文本文件,使C#代碼並不需要超長找到一段特定的文字?

+2

這是什麼問題?你怎麼能找到一個由字符串分隔的大文件中的特定結果? –

回答

1

壓縮文件只會節省您的存儲空間 - 它將花費相同的時間來瀏覽文件。

提高性能的最簡單方法是對.txt文件中的行進行排序並使用binarySearch算法。

-1

如果文件真的很大,需要一段時間下載,我會處理文件,尋找所需的結果,因爲它正在下載。這樣,您可以在找到想要的結果後停止下載。

這個例子應該讓你開始:https://stackoverflow.com/a/2269627/74585