![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 15.04.2011
Сообщений: 38
|
![]()
Ребят, столкнулся еще давно с проблемой о том что никак не могу удалить ( в Borland C++) строку из файла ( строка вводится с консоли)
пробовал делать с участием оперативной памяти, переносил всю информацию из файла в динамический массив, потом обрабатывал пытался обратно занести информацию но так и безуспешно... так же пытался заменить пустой строкой строку которую нужно удалить... тоже безуспешно( мне сказали что лучше всего сделать удаление строки из файла в одной потоке... и сказали что это несложно... но когда я спросил "вообще это как?" то так и не услышал ответа... =( прошу подсказать если не сложно ) буду очень благодарен, думаю что не стоит эта программы 2-3 ех недель мучений сидя с книжкой К. и Р. , устал уже) ![]() |
![]() |
![]() |
![]() |
#2 |
Сливочное масло
Участник клуба
Регистрация: 01.01.2011
Сообщений: 1,149
|
![]()
1. Открываешь фаил 1 на чтение.
2. Открываешь фаил 2 на запись. 3. В цикле переписываешь тупо строки фаила 1 в фаил 2. - если встретилась заданая строка, то не делаем добавление в фаил 2. 4. Закрываем фаилы. 5. Заменяем фаил 1 файлом 2. Или что ты вообще спросил то?
Сливочное масло Valio - компиляция как по маслу
Последний раз редактировалось Valio; 20.05.2011 в 19:02. |
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 15.04.2011
Сообщений: 38
|
![]()
я так пробовал, но это использование временных файлов, которое мне не подходит,
меня интересует работа с потоком , т.е это возможно сделать в одном потоке! Спасибо, за совет, но я так пробовал) просто эта программа будет неверной если файл весит 3 гб например))) и оперативы не хватит) |
![]() |
![]() |
![]() |
#4 | ||
Сливочное масло
Участник клуба
Регистрация: 01.01.2011
Сообщений: 1,149
|
![]() Цитата:
Цитата:
![]()
Сливочное масло Valio - компиляция как по маслу
|
||
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 15.04.2011
Сообщений: 38
|
![]()
потому что у тебя оператива забьется и программа не станет работать..
переведем образ игры например в текстовик) вот и будет такой файл)) при создании массива у тебя используется так же оперативка, ты в нее помещаешь информацию с файла... я пробовал так( |
![]() |
![]() |
![]() |
#6 | |
Сливочное масло
Участник клуба
Регистрация: 01.01.2011
Сообщений: 1,149
|
![]() Цитата:
И вообще фаил образа это ничто иное как подобие архива. Какая задача стоит? Что на входе? Что на выходе?
Сливочное масло Valio - компиляция как по маслу
|
|
![]() |
![]() |
![]() |
#7 |
Пользователь
Регистрация: 15.04.2011
Сообщений: 38
|
![]()
смотри как звучит задание программы:
С консоли ввести имя и путь файла и произвольную строку. Из файла должна быть удалена строка введеная с консоли. Я хочу это сделать с использованием потока. |
![]() |
![]() |
![]() |
#8 | |
Сливочное масло
Участник клуба
Регистрация: 01.01.2011
Сообщений: 1,149
|
![]() Цитата:
Это не то задание где можно реально посмотреть всю нужность потоков.
Сливочное масло Valio - компиляция как по маслу
|
|
![]() |
![]() |
![]() |
#9 |
Пользователь
Регистрация: 15.04.2011
Сообщений: 38
|
![]()
Можно ли как то еще провернуть удаление без временного файла и без создания массива строк файла?
если да, то скажи идейку) или примерчик какой-нибудь.. |
![]() |
![]() |
![]() |
#10 | |
Сливочное масло
Участник клуба
Регистрация: 01.01.2011
Сообщений: 1,149
|
![]() Цитата:
"Прелесть" текстового файла в том, что читать его можно только последовательно. Для того чтоб прочитать что в 150 строке нужно прочитать все предыдущие 149. Что касается 3 Гб текстовый фаил, то я смутно представляю такой текстовый фаил. Такие объёмы размещают обычно в БД. Я могу только посоветовать поглядеть в сторону типизированых файлов. В отличие от текстовых их можно читать с какой угодно позиции используя Seek (Delphi).
Сливочное масло Valio - компиляция как по маслу
|
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
При чтении из консоли в одном потоке, не передается управление другому потоку | Хохол | Общие вопросы по Java, Java SE, Kotlin | 3 | 10.11.2010 18:22 |
Как сделать все процессы на одном Timer | Sanek777 | Общие вопросы Delphi | 5 | 26.09.2008 17:56 |
Удаление строки из файла | Македонский | Общие вопросы Delphi | 5 | 29.08.2007 15:40 |
Как сделать все данные на одном языке? | Python | Microsoft Office Excel | 2 | 29.01.2007 12:37 |