Название: Работа с файлом Отправлено: bez_glaz от Март 09, 2012, 10:36 Добрый день.
Стоит задача - в текстовом файле зная номер строки удалить строчку. Читая форумы, увидел только вариант создавать строку, записывать в неё все данные до нужной строки + все данные после нужной строки, очищать файл и вносить в него вновь созданную строку. Вариант не подходит, файл может содержать больше информации, нежели вместит QString. Название: Re: Работа с файлом Отправлено: BRE от Март 09, 2012, 10:44 А тут вариантов не много.
Например, создавай новый файл и построчно копируй туда строки из старого файла. Не нужную строку пропускай. Название: Re: Работа с файлом Отправлено: bez_glaz от Март 09, 2012, 11:03 Наткнулся на метод с потоком. Единственное решение по "затиранию" в файле.
Код: QTextStream out(&shadow_file); Может рыть в сторону потока ? Название: Re: Работа с файлом Отправлено: mutineer от Март 09, 2012, 11:08 Наткнулся на метод с потоком. Единственное решение по "затиранию" в файле. Код: QTextStream out(&shadow_file); Может рыть в сторону потока ? Просто удалить строку из файла нельзя, можно только перезаписью всего файла или его части начиная от нужной строки Название: Re: Работа с файлом Отправлено: BRE от Март 09, 2012, 11:08 Может рыть в сторону потока ? Поток это средство для работы с текстовыми файлами, с ним может быть удобней.Для чего затирать строку пробелами? Цикл пока в исходном файле есть строки Читаешь строку исходного файла Если номер этой строки != номеру удаляемой строки Записываем строку в результирующий файл Конец цикла Название: Re: Работа с файлом Отправлено: alexandros от Март 09, 2012, 16:34 А тут вариантов не много. Например, создавай новый файл и построчно копируй туда строки из старого файла. Не нужную строку пропускай. Лично я бы так и сделал |