Удаление строки из файла - C# (185268)
Формулировка задачи:
Здравствуйте. Не могу придумать реализацию удаления строки из файла. Предположем в файле находится информация о нескольких студентах. Известны: номер группы, ФИО студента, его оценки за сессию (массив из 5 элементов) и результат сдачи сессии (массив из 5 элементов. Как удалить все записи указанной пользователем группы?
Хотел сделать так, чтобы файл перезаписывался без нужных записей на n-1 строк в файл. Но не совсем получается. Помогите пожалуйста.
int nom;
Console.WriteLine("Введите номер группы для удаления: ");
nom = Convert.ToInt32(Console.ReadLine());
StreamWriter sw = new StreamWriter("F:\\Sessia.txt", false, System.Text.Encoding.Default);
for (int i = 0; i < k; i++)
{
if (nom != st[i].getNumber())
st[i].diskOut(sw);
else
{
k--;
st[i].diskOut(sw);
}
}Решение задачи: «Удаление строки из файла»
textual
Листинг программы
string[] file = File.ReadAllLines("E://Students.txt", Encoding.Default);
string[] newfile = new string[file.Length];
int a = 0;
Console.Write("Введите номер группы: ");
string num = Console.ReadLine();
for (int i = 1; i < file.Length; i += 13)
{
if (file[i] == num)
{
for (int k = - 1; k < 12; k++) file[i + k] = null;
}
}
for (int i = 0; i < file.Length; i++)
{
if (file[i] != null)
{
newfile[a] = file[i];
a++;
}
}
File.WriteAllLines("E://Students.txt", newfile);