Удаление строки из файла - 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);
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д