我需要對文本文件進行修改並保持原文不變。現在,我正在使用讀寫器並讀取文件,然後將其寫回無法進行修改。讀取/寫入文件與移動文件的時間相同嗎?
不幸的是,文本文件是巨大的,〜2GB,並需要大約一個小時才能完成(因爲文本文件在網絡驅動器上)。
會使用該文件。移動會比讀取/寫入更快嗎?例如,將文本文件移動到本地計算機,執行修改,然後將其移回?
或者,製作原件的副本,然後通過修改,而不必讀/寫?
我當前的代碼:
try
{
using (StreamReader reader = new StreamReader(filePath))
{
using (StreamWriter writer = new StreamWriter(output))
{
//go through the whole txt file
while (!reader.EndOfStream)
{
//gets the line
line = reader.ReadLine();
if (!modification case goes here))
{
writer.Write(line);
}
}
}
}
}
}
任何幫助,將不勝感激!
你有沒有試過將文件複製到本地機器,然後再回來?這會給你一個基準時間,在本地修改文件將花費時間。如果複製來回接近1小時,那麼您不可能從本地進行修改獲得許多好處。 –
表現如何?如果它不在line = reader.ReadLine();那麼文件的位置並不重要,我猜測瓶頸將是您的修改檢查。如果ReadLine();是你的瓶頸,我不認爲在本地移動文件,然後回來會有幫助。 –
感謝您的建議!我會立即測試這些信息並回報。 – Childishforlife