Сохранение данных из List в txt - C#
Формулировка задачи:
многопоточный парсер html.
данные парсятся регулярными выражениями и заносятся в List <string>.
примерный вид List:
1
12
123
1234
...
то есть, каждая новая строка отличается новым добавленным последним элементом.
данные из List, периодически сохраняются в txt.
реализовано так:
проблема в том, что в txt записываются все строки из List. отсюда получается множество дублей.
т.к. данные в txt так и есть как List:
пробовал записывать последнюю строку из List - var x = vfail[vfail.Count - 1];
не помогает. почему-то все равно записывается с дублями. возможно из-за многопоточности, но почему тогда lock не срабатывает.
в общем, как решить данную проблему?
P.S.
периодическая чистка List производится - vfail.Clear();
lock (vfail)
if (vfail.Count > 0)
{
var sw = new StreamWriter("ALL.txt", true);
foreach (var akk in vfail)
sw.Write(akk);
sw.Close();
vfail.Clear();
}1 12 123 1234 ...
Решение задачи: «Сохранение данных из List в txt»
textual
Листинг программы
// good парсим регуляркой
result = string.Empty;
foreach (Match m in good)
{
result = result + m.Value + "\r\n";
lock (vfail)
vfail.Add(result);
}