Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.74/140: Рейтинг темы: голосов - 140, средняя оценка - 4.74
2 / 2 / 0
Регистрация: 12.05.2009
Сообщений: 9

Удаление символов из файла

31.05.2009, 06:28. Показов 29969. Ответов 13

Студворк — интернет-сервис помощи студентам
Как удалить символы из открытого для чтения файла при помощи только функций fgetc и fputc? Может написать кто код для, например, удаления первых пяти символов?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
31.05.2009, 06:28
Ответы с готовыми решениями:

Замена и удаление символов из файла
Добрый вечер! Подскажите, пожалуйста. Мне нужно из одного файла вида: ] ] ] ] Получить файл вида: 1 | 2 | 3 3 | 1, 2,...

Удаление строк (символов) из файла
Подскажите, пожалуйста как реализовать программно (1) исключение из исходного текстового файла подстрок, являющихся цепочками заданного...

Удаление символов из файла!?
Сталкивался с этой задачей много раз... Вот сейчас не могу обработать, скачанный wget файл со списком прокси. Кое-как решается set...

13
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
31.05.2009, 06:35
Цитата Сообщение от NewMax
Как удалить символы из открытого для чтения файла
никак, чтобы редактировать файл его нужно открыть для записи (можно комбинировать через r+)

можно перевести позицию файла на шестой символ от начала и читать, но символы в файле всё равно останутся

а для перевода нужно впустую прочитать пять символов (если только fgetc можно юзать), можно fscanf юзать, вообще fseek есть
Code
1
fscanf(ifp, "%*5c");
0
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21281 / 8305 / 637
Регистрация: 30.03.2009
Сообщений: 22,660
Записей в блоге: 30
31.05.2009, 14:44
Из файла символы удалять нельзя. Такие операции делаются через второй файл. Читаешь данные из первого файда, записываешь во второй, пропуская ненужные. В конце закрываешь оба файла и второй переименовываешь в первый

Хотя судя по постановке вопроса - тебе нужно не удалить а просто пропустить. В этом случае нужно просто 5 раз вызвать fgetc
0
2 / 2 / 0
Регистрация: 12.05.2009
Сообщений: 9
31.05.2009, 19:42  [ТС]
Сейчас сформулирую поконкретнее:
у меня есть некий текстовый файл со словами, мне надо удалить какое-нибудь слово без использования массивов и дополнительных файлов.
Я сделал такую штуку: переставлял в нужном мне месте символы, затирая тем самым слово, а символы из слова заменял пробелами и пихал в конец файла
0
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21281 / 8305 / 637
Регистрация: 30.03.2009
Сообщений: 22,660
Записей в блоге: 30
31.05.2009, 19:43
Удалить слово, а дальше что? Результат обратно должен быть записан в этот файл или просто выведен на экран?
0
2 / 2 / 0
Регистрация: 12.05.2009
Сообщений: 9
31.05.2009, 21:00  [ТС]
всё должно быть записано в этот же файл
0
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21281 / 8305 / 637
Регистрация: 30.03.2009
Сообщений: 22,660
Записей в блоге: 30
31.05.2009, 23:31
Ну значит делай то, что в посте #3 написано
0
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
01.06.2009, 04:27
Цитата Сообщение от NewMax
Я сделал такую штуку: переставлял в нужном мне месте символы, затирая тем самым слово, а символы из слова заменял пробелами и пихал в конец файла
но это не очень много меняет, потому что в файле появляются пробелы (то есть он сохраняет свою длину)
есть функция tmpfile(), но она будет использовать дополнительный файл
1
2 / 2 / 0
Регистрация: 12.05.2009
Сообщений: 9
01.06.2009, 16:22  [ТС]
спасибо за помощь
0
0 / 0 / 0
Регистрация: 14.11.2009
Сообщений: 9
14.11.2009, 04:00
Цитата Сообщение от NewMax Посмотреть сообщение
спасибо за помощь
А можно полный листинг программы, пожалуйста???=)))
0
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
14.11.2009, 13:56
удаляет несколько первых символов в файле
Вложения
Тип файла: zip remove_first_file.zip (440 байт, 238 просмотров)
1
0 / 0 / 0
Регистрация: 14.11.2009
Сообщений: 9
14.11.2009, 14:01
Цитата Сообщение от feliks2009 Посмотреть сообщение
А можно полный листинг программы, пожалуйста???=)))
а без использования массивов и дополнительных файлов как сделать??))
просто такое условие в задаче(((
0
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
14.11.2009, 14:21
размер файла никак не изменишь, только перезатереть; чтобы сохранить то, что там есть, нужно это где-то хранить
ну, системный вызов может быть можно заюзать какой-нибудь, но это не стандарт
0
0 / 0 / 0
Регистрация: 14.11.2009
Сообщений: 9
14.11.2009, 14:26
Цитата Сообщение от accept Посмотреть сообщение
размер файла никак не изменишь, только перезатереть; чтобы сохранить то, что там есть, нужно это где-то хранить
ну, системный вызов может быть можно заюзать какой-нибудь, но это не стандарт
ну как тогда быть, а то я уже не знаю
вот условие исходное "В ИСХОДНОМ БИНАРНОМ ФАЙЛЕ (СОЗДАТЬ И ВВЕСТИ) УДАЛИТЬ ВСЕ ПРОБЕЛЫ.
ДОПОЛНИТЕЛЬНЫХ МАССИВОВ И ФАЙЛОВ НЕ ИСПОЛЬЗОВАТЬ"

я уже запутался, помогите!)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
14.11.2009, 14:26
Помогаю со студенческими работами здесь

Удаление символов из файла
Имеется скрипт, который конвертирует xls в csv. Необходимо добавить в него команду, которая перед сохранением будет удалять из файла xls...

Удаление символов из файла
решить в консольном режиме: Дан символьный файл, содержащий по крайней мере один символ пробела. Удалить все его элементы, расположенные...

Удаление символов в начале и конце файла
Добрый вечер, помогите решить проблему. Есть ссылка:...

Удаление последних символов в каждой строке файла
Добрый вечер еще раз :) Суть такова: Есть текстовый файл, в котором содержится несколько строк текста (точного количества нету). Как...

Удаление из файла строк, состоящих из более N символов
Искал по форуму , но увы не нашел того что нужно - есть очень похожий код , но моих знаний не хватает адаптировать его под свои нужды. ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Первый деплой
lagorue 16.01.2026
Не спеша развернул своё 1ое приложение в kubernetes. А дальше мне интересно создать 1фронтэнд приложения и 2 бэкэнд приложения развернуть 2 деплоя в кубере получится 2 сервиса и что-бы они. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит: токи, напряжения и их 1 и 2 производные при t = 0;. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru