Форум программистов, компьютерный форум CyberForum.ru

Записать значение в файл - C++

Восстановить пароль Регистрация
 
pEntity
10 / 5 / 1
Регистрация: 12.12.2012
Сообщений: 371
12.06.2014, 16:03     Записать значение в файл #1
Нужно сохранить значение переменной в файл. После считать и перезаписать его. И так периодически до конца программы.

Как будет выглядеть алгоритм ?

Это полная документация флагов ?

"r" Создает файл для записи (по умолчанию файл открывается как текстовый).
"w" Создает файл для записи (по умолчанию файл открывается как текстовый).
"а" Дописывает информацию к концу файла (по умолчанию файл открывается как текстовый).
"rb" Открывает двоичный файл для чтения.
"wb" Создает двоичный файл для записи.
"ab" Дописывает информацию к концу двоичного файла.
"r+" Открывает файл для чтения/записи (по умолчанию файл открывается как текстовый).
"w+" Создает файл для чтения/записи (по умолчанию файл открывается как текстовый).
"а+" Дописывает информацию к концу файла или создает файл для чтения/записи (по умолчанию открывается как текстовый файл).
"r+b" Открывает двоичный файл для чтения / записи.
"w+b" Создает файл для чтения / записи.
"а+b" Дописывает информацию к концу файла или создает двоичный файл для чтения.
"rt" Открывает текстовый файл для чтения.
"wt" Открывает текстовый файл для записи.
"at" Дописывает информацию к концу текстового файла.
"r+t" Открывает текстовый файл для чтения/записи.
"w+t" Создает текстовый файл для чтения/записи.
"a+t" Открывает или создает текстовый файл для чтения/записи.
Я бы не хотел вручную файл создавать, выходит что для fopen я ставлю флаг "ra" ?

Создался файл, записал значение.

Далее нужно считать с него данные.

Ставлю флаг "rt" ?

Далее нужно перезаписать.

Ставлю флаг "wt" ?

И еще при запуске программы когда я ставлю при первом действии флаг "ra", мне нужно проверять если файла нет, то "ra", если есть, уже просто "a" ?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.06.2014, 16:03     Записать значение в файл
Посмотрите здесь:

C++ как записать в файл значение елементов масива структур?
C++ Дан файл. Записать в другой файл строки, которые являются палиндромами.
C++ Дан символьный файл f. Записать в файл g элементы файла f в обратном порядке
C++ взять готовый файл с набором чисел, в нем найти максимальное значение и записать во второй созданный файл
Необходимо создать массив на 1 елемент, и записать туда значение. Пользователь может добавить значение или удалить. И выйти C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
12.06.2014, 16:52     Записать значение в файл #2
Цитата Сообщение от pEntity Посмотреть сообщение
Это полная документация флагов ?
Это всё относится к языкау Си. В С++ для этого есть классы: fstream, ofstream, ifstream.
http://www.cplusplus.com/reference/f...am/?kw=fstream
http://www.cplusplus.com/reference/fstream/ofstream/
http://www.cplusplus.com/reference/fstream/ifstream/
nmcf
4265 / 3696 / 1243
Регистрация: 14.04.2014
Сообщений: 14,476
12.06.2014, 16:55     Записать значение в файл #3
Достаточно открыть (создать) файл 1 раз и дальше с ним работать. Флаг wb+ или wt+ (бинарный либо текстовый).
pEntity
10 / 5 / 1
Регистрация: 12.12.2012
Сообщений: 371
12.06.2014, 19:02  [ТС]     Записать значение в файл #4
Не могу разобраться с этими флагами.

Программа запустилась.
1 )Послал команду. Создался файл и записалось в него значение переменной int g_iTest;
В файле создалась строка 1273561
2) Послал другую команду - Теперь нужно считать это значение.
3) Послал другую команду -Теперь нужно перезаписать это значение. С 1273561 на 7623782

Помогите выполнить эти действия.

1)
a+ Файл открывается для записи в конец (для дозаписи) или создается, если не существует
Использую в fopen a+, делаю запись через fwrite.

2) Использую fopen + r и fread для чтения.

3) Перезаписываю, использую fopen + w и fwrite ?
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
12.06.2014, 19:08     Записать значение в файл #5

Не по теме:

Говорили мне не отсылать...

Вот здесь есть форум по Си, там такие вопросы нужно выяснять:
http://www.cyberforum.ru/c-beginners/
Здесь форум по С++.
pEntity
10 / 5 / 1
Регистрация: 12.12.2012
Сообщений: 371
12.06.2014, 19:15  [ТС]     Записать значение в файл #6
Да я понимаю. Я просто по С++ не понимаю как. Гугл ведет на С. А то, что вы дали, это ведь функции для самого fopen?

Вы можете показать как решить мою задачку ?
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
12.06.2014, 19:18     Записать значение в файл #7
Цитата Сообщение от pEntity Посмотреть сообщение
Я просто по С++ не понимаю как. Гугл ведет на С.
Ну, так и идите вот сюда, там Си: http://www.cyberforum.ru/c-beginners/
pEntity
10 / 5 / 1
Регистрация: 12.12.2012
Сообщений: 371
12.06.2014, 19:21  [ТС]     Записать значение в файл #8
А я хочу на С++
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
12.06.2014, 19:26     Записать значение в файл #9
Цитата Сообщение от pEntity Посмотреть сообщение
А я хочу на С++
...
Цитата Сообщение от alsav22 Посмотреть сообщение
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.06.2014, 19:45     Записать значение в файл
Еще ссылки по теме:

Дан символьный файл f. Записать в файл g компоненты файла f в обратном порядке C++
Дан целочисленный файл А. Записать в файл В все кратные трём числа из А C++
Записать в файл g наибольшее значение первых ста компонент файла f C++

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

Или воспользуйтесь поиском по форуму:
pEntity
10 / 5 / 1
Регистрация: 12.12.2012
Сообщений: 371
12.06.2014, 19:45  [ТС]     Записать значение в файл #10
Аа всё, спасибо. Нашел примеры работ с этими функциями, разобрался. Спасибо.
Yandex
Объявления
12.06.2014, 19:45     Записать значение в файл
Ответ Создать тему
Опции темы

Текущее время: 02:49. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru