Ваш StreamWriter явно использует файл с append = true.Измените второй параметр конструктора на false, если вы хотите каждый раз перезаписывать файл.Документы здесь .Цитата:
append
Тип: System.Boolean
Определяет, должны ли данные добавляться в файл.Если файл существует и append false, файл перезаписывается.Если файл существует и append is true, данные добавляются в файл.В противном случае создается новый файл.
Исправленный код:
using (StreamWriter sw = new StreamWriter(Append.FileName, false))
{
sw.WriteLine();
sw.Write(mydata);
}
Замена данной строки в вашем файле, а не просто перезапись всего файланамного сложнее - этот код не справится.StreamWriter
не подходит для этого, вам нужен произвольный доступ и возможность замены одного сегмента данных (строки) другим сегментом данных разной длины, что является дорогостоящей операцией на диске.
Возможно, вы захотите сохранить файлы в памяти в виде контейнера String
с и выполнить требуемую замену строки в контейнере, а затем записать файл на диск, используя File.WriteAllLines - это если файл не слишком большой.