2010-06-03 84 views
0

我有兩個文本文件。我想複製第一個文本文件中的特定部分,並將其替換爲第二個文本文件的一部分。如何覆蓋文本文件上的特定行

這是我讀文件:

List<string> PrevEp = File.ReadAllLines(string.Format(@"{0}naruto{1}.ass", url, PrevEpNum)).ToList(); 
List<string> Ep = File.ReadAllLines(string.Format(@"{0}naruto{1}.ass", url, EpNum)).ToList(); 

PrevEp的一部分,我需要:從一開始,直到它遇到一個行,其中包括Creditw,,0000,0000,0000

我想在Ep中覆蓋的部分:從一開始到一條正好是Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text的線。

我不太確定我該怎麼做。你能幫我一把嗎? 非常感謝。

回答

2

不要認爲它是覆蓋文件中的行,只是按照當前的方式進行操作,並將其全部加載到List s中,然後通過Ep循環,直到找到需要的部分,刪除所有項目從您想要覆蓋的列表中,並且只保留索引和Insert到該索引中的新行。

然後,您將Ep寫入臨時文件,刪除原始Ep文件並將臨時Ep文件重命名爲原始名稱。

在漂亮的結構中執行內存操作比在文件中操作要容易得多,並且如果出現電源故障或某些情況,您將不會用半寫的編輯來破壞文件。

1

我會閱讀這兩個文本文件,操縱和重寫它們,而不是試圖替換和做各種欺騙和巫術。

0

您是否遇到了查找線條或將最終文件放在一起的問題?