|
60 / 60 / 7
Регистрация: 16.05.2010
Сообщений: 632
|
||||||||
Открытие файла09.08.2012, 20:05. Показов 7886. Ответов 92
Метки нет (Все метки)
У меня есть файл в котором сначала хранится количество наименований файлов,а потом названия файлов
пример
2!
1.txt! 2.txt! ! используются как разделители Как именно открыть файл,чтоб данные не стёрлись,но я мог например перместиться в начало файла и записать новое кол-во файлов,стерев старое. тут пример того,как я открываю файл,записываю новое кол-во файлов и дописываю в конец названия,однако на деле ф вайле лишь 0! и всё
на данный момент у меня не получается записать данные о новом количестве файлов и дописать новые названия Добавлено через 16 часов 43 минуты
0
|
||||||||
| 09.08.2012, 20:05 | |
|
Ответы с готовыми решениями:
92
Как может корректно выполняющийся оператор >> (чтение из текстового файла) негативно влиять на открытие другого файла? Открытие файла Открытие файла |
|
60 / 60 / 7
Регистрация: 16.05.2010
Сообщений: 632
|
|
| 10.08.2012, 01:13 [ТС] | |
|
у меня в файле будут названия файла с различной длиной
я могу после каждого слова делать переход на следующую строку,а вот как мне найти эти переходы
0
|
|
|
|
||||||
| 10.08.2012, 01:20 | ||||||
|
Да не нужны никакие переходы в бинарнике...
Отводи под путь допустим 256 символов ( ну или сколько там MAX_PATH )
0
|
||||||
|
60 / 60 / 7
Регистрация: 16.05.2010
Сообщений: 632
|
||||||
| 10.08.2012, 04:16 [ТС] | ||||||
|
в принципе вариант,хоть и не самый рациональный
всё равно спасибо всем кто отписался Добавлено через 2 часа 50 минут Вот моя нынешняя функция,проблема возникает при записи названия в файл
0
|
||||||
|
179 / 127 / 25
Регистрация: 12.01.2012
Сообщений: 623
|
|
| 10.08.2012, 04:51 | |
|
Я совершенно не пойму что делает программа, может и правда стоит произвести очень четкое разграничение, что делать при записи файлов, а что при чтении. Или по крайней мере в отдельную функцию запихнуть с осмысленным названием.
По 80 строке у меня есть подозрение, что синтаксис функции write() таков write( char * customString, long lenOfCustomString) http://www.cplusplus.com/refer... eam/write/ А вы зачем-то передаёте ей размер указателя на char
0
|
|
|
60 / 60 / 7
Регистрация: 16.05.2010
Сообщений: 632
|
||||||
| 10.08.2012, 05:09 [ТС] | ||||||
|
даже,если сделаю так,то всё равно результат тот же
0
|
||||||
|
179 / 127 / 25
Регистрация: 12.01.2012
Сообщений: 623
|
|
| 10.08.2012, 05:16 | |
|
alexey31415, а вы попробуйте во втором параметре strlen(NameOfFiles[i])
0
|
|
|
60 / 60 / 7
Регистрация: 16.05.2010
Сообщений: 632
|
|
| 10.08.2012, 05:21 [ТС] | |
|
согласен ошибка глупая,не заметил в спешке,но всё равно проблема та же
0
|
|
|
179 / 127 / 25
Регистрация: 12.01.2012
Сообщений: 623
|
|
| 10.08.2012, 05:24 | |
|
Тогда не знаю. Попробуйте отладочную информацию выводить или даже сразу отладчиком пользоваться, а можно и то и другое
0
|
|
|
60 / 60 / 7
Регистрация: 16.05.2010
Сообщений: 632
|
|
| 10.08.2012, 05:26 [ТС] | |
|
я и так отладчиком пользуюсь,вылетает ошибка необработанное исключение в ... и идёт адрес блока памяти
0
|
|
|
179 / 127 / 25
Регистрация: 12.01.2012
Сообщений: 623
|
|
| 10.08.2012, 05:30 | |
|
А можно чисто ради интереса дать этот самый пример входного файла. И что там за заголовки в stdafx?
0
|
|
|
60 / 60 / 7
Регистрация: 16.05.2010
Сообщений: 632
|
|
| 10.08.2012, 05:36 [ТС] | |
|
в коде предусмотрен вариант когда файла ещё нет,он создаётся,туда записываётся 0(кол-во названий),потом я ввожу название и он записывает название,предварительно записав новое кол-во файлов(1)
вот поэтому файла нет Добавлено через 3 минуты ах да,почему-то не записываются данные при создании файла(если он не был создан) должен быть записан 0,а там пусто
0
|
|
|
179 / 127 / 25
Регистрация: 12.01.2012
Сообщений: 623
|
||||||
| 10.08.2012, 05:42 | ||||||
|
Ну так как ясень пень, что здесь нулевой элемент никогда не будет инициализрован
1
|
||||||
|
60 / 60 / 7
Регистрация: 16.05.2010
Сообщений: 632
|
||
| 10.08.2012, 05:44 [ТС] | ||
|
файл выглядеть должен примерно так 2//это кол-во названий файлов 1.txt//сами названия 2.txt и так далее
0
|
||
|
|
|
| 10.08.2012, 12:55 | |
|
Пример сразу с seek() http://www.cplusplus.com/refer... eam/write/
0
|
|
| 10.08.2012, 13:51 [ТС] | |
|
0
|
|
|
179 / 127 / 25
Регистрация: 12.01.2012
Сообщений: 623
|
|
| 10.08.2012, 22:01 | |
|
Ошибку, что я привёл, исправили хотя бы?
Зачем вообще эти seek? Может стоит просто тупо считать весь файл в какой-нибудь список файлов? Все равно при записи в начало файла необходимо считать его в оперативную память, изменить начало строки и только потом производить запись. А считывать построчно при помощи банального std::getline(fstream, filename). Вон, зайди в папку system32, там тысячи файлов, но проводник ведь не вылетает из-за нехватки памяти. Можно ещё, как вариант, зарезервировать первые 10 байт под хранение кол-файлов, и если в середине файла ничего не менялось, то тупо переписывать именно первые 10 байт, в которых указывать новое кол-во файлов. Этот алгоритм можно также распространить и для файлов в середине списка, но это не стоит того, имхо
0
|
|
|
60 / 60 / 7
Регистрация: 16.05.2010
Сообщений: 632
|
||
| 10.08.2012, 22:35 [ТС] | ||
|
теперь данные записываются,спасибо,но я выделяю для каждого названия массив из 32 байтов,а названия могут быть и короче,поэтому когда я открываю созданный файл,то выводится следующее
0
|
||
|
60 / 60 / 7
Регистрация: 16.05.2010
Сообщений: 632
|
||||||||||||
| 10.08.2012, 23:24 [ТС] | ||||||||||||
|
вот собственно функция
в 81 строке
0
|
||||||||||||
|
|
||||||
| 11.08.2012, 00:22 | ||||||
1
|
||||||
| 11.08.2012, 00:22 | |
|
Открытие файла на C++ Открытие файла. открытие файла
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Особенности gif сгенерированных в Си
russiannick 21.10.2026
Рассмотрим генерацию gif файлов, которые в Си имеют свои особенности.
Gif представляет собой графический формат популярный в интернете. Посмотрим на палитру. Gif файл сгенерированный в си отличается. . .
|
FPS контроллер с анимированными Y-Bot и 3D-звуком miniaudio (Box3D, Recast, BehaviorTree.CPP, ozz-animation, ImGui, OpenGL и SDL3)
8Observer8 18.10.2026
Содержание блога | English Version
Полное мультиплатформенное руководство по стартовому проекту с FPS-контроллером игрока, анимированными роботами Y-Bot с 4-слойным блендингом, 3D-физикой Box3D,. . .
|
Локальный http сервер
Argus19 17.10.2026
Локальный http сервер
На работе, на двух локальных компьютерах круглосуточно работают программы опроса приборов с записью в книги Excel,которые раз в сутки записываются на сервер компании. Т. к. . . .
|
Копировать Windows на новый диск на UEFI
damix 17.10.2026
https:/ / uriesk. wordpress. com/ 2016/ 11/ 01/ move-window-10-to-ssd-on-a-uefi-dualboot-system-with-basic-linux-tools/
TL DR
Вставляем диск, а старый подключаем через переходник, грузимся с лайва. . .
|
|
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык.
Возвращает он вот это:
https:/ / i. **********/ vqBWLe2. png
Нужную строчку в 3й колонке просто выдумал. .
Это. . .
|
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor.
Это. . .
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|