crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

2 страниц V   1 2 >  
Ответить в данную темуНачать новую тему
> Удаление данных из файла, Чем?
QMainWindow
  опции профиля:
сообщение 10.8.2011, 16:53
Сообщение #1


Участник
**

Группа: Участник
Сообщений: 198
Регистрация: 1.8.2010
Пользователь №: 1922

Спасибо сказали: 0 раз(а)




Репутация:   0  


Привет!
Как удалить данные из файла? Файл текстовый, нужно удалить несколько строк, причем не заменить на пустые строки, а именно удалить. Как можно сделать?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
wiz29
  опции профиля:
сообщение 10.8.2011, 17:03
Сообщение #2


Старейший участник
****

Группа: Участник
Сообщений: 600
Регистрация: 7.7.2010
Из: Санкт-Петербург
Пользователь №: 1866

Спасибо сказали: 94 раз(а)




Репутация:   12  


только пересохранением файла с таким же именем.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
maint
  опции профиля:
сообщение 10.8.2011, 17:06
Сообщение #3


Участник
**

Группа: Участник
Сообщений: 235
Регистрация: 3.8.2009
Из: Иркутск
Пользователь №: 982

Спасибо сказали: 28 раз(а)




Репутация:   2  


Цитата(QMainWindow @ 10.8.2011, 22:53) *
Привет!
Как удалить данные из файла? Файл текстовый, нужно удалить несколько строк, причем не заменить на пустые строки, а именно удалить. Как можно сделать?

копированием во времянку, пропуском строк и переименованием времянки в текущее имя
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
QMainWindow
  опции профиля:
сообщение 10.8.2011, 17:21
Сообщение #4


Участник
**

Группа: Участник
Сообщений: 198
Регистрация: 1.8.2010
Пользователь №: 1922

Спасибо сказали: 0 раз(а)




Репутация:   0  


Хм, и так все программы работают?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
maint
  опции профиля:
сообщение 10.8.2011, 17:28
Сообщение #5


Участник
**

Группа: Участник
Сообщений: 235
Регистрация: 3.8.2009
Из: Иркутск
Пользователь №: 982

Спасибо сказали: 28 раз(а)




Репутация:   2  


Цитата(QMainWindow @ 10.8.2011, 23:21) *
Хм, и так все программы работают?

само собой. Разве что небольшие файлы просто переписывают заново с начала
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
QMainWindow
  опции профиля:
сообщение 10.8.2011, 19:13
Сообщение #6


Участник
**

Группа: Участник
Сообщений: 198
Регистрация: 1.8.2010
Пользователь №: 1922

Спасибо сказали: 0 раз(а)




Репутация:   0  


А как с большими поступают?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
maint
  опции профиля:
сообщение 10.8.2011, 19:35
Сообщение #7


Участник
**

Группа: Участник
Сообщений: 235
Регистрация: 3.8.2009
Из: Иркутск
Пользователь №: 982

Спасибо сказали: 28 раз(а)




Репутация:   2  


Цитата(QMainWindow @ 11.8.2011, 1:13) *
А как с большими поступают?

уже говорилось. Копируется сколько надо во времянку и т.п. А для структурированных данных уже другой подход
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
QMainWindow
  опции профиля:
сообщение 11.8.2011, 10:34
Сообщение #8


Участник
**

Группа: Участник
Сообщений: 198
Регистрация: 1.8.2010
Пользователь №: 1922

Спасибо сказали: 0 раз(а)




Репутация:   0  


Понял. Почему же не придумали непосредственное удаление?

PS можно ли как-нибудь QTextStream указать номер строки, с которой необходимо считывать? Или до нужной строки надо доходить циклом вроде
for(i=0;i<index_of_my_line;i++) in.readLine();
?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
maint
  опции профиля:
сообщение 11.8.2011, 11:13
Сообщение #9


Участник
**

Группа: Участник
Сообщений: 235
Регистрация: 3.8.2009
Из: Иркутск
Пользователь №: 982

Спасибо сказали: 28 раз(а)




Репутация:   2  


Цитата(QMainWindow @ 11.8.2011, 16:34) *
Понял. Почему же не придумали непосредственное удаление?

PS можно ли как-нибудь QTextStream указать номер строки, с которой необходимо считывать? Или до нужной строки надо доходить циклом вроде
for(i=0;i<index_of_my_line;i++) in.readLine();
?

после изучения мат.части (последовательный доступ), первый вопрос отпадёт. Номер строки указать нельзя, если строки разной длины. Если одинаковой, что вряд ли, можно вычислить смещение.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
QMainWindow
  опции профиля:
сообщение 11.8.2011, 11:15
Сообщение #10


Участник
**

Группа: Участник
Сообщений: 198
Регистрация: 1.8.2010
Пользователь №: 1922

Спасибо сказали: 0 раз(а)




Репутация:   0  


Значит только циклом проходить?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

2 страниц V   1 2 >
Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 27.12.2024, 21:46