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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Познающая
0 / 0 / 0
Регистрация: 22.11.2012
Сообщений: 25
#1

Запись в файл - C++

01.05.2013, 15:38. Просмотров 230. Ответов 3
Метки нет (Все метки)

Добрый день!
Изучаю тему открытия файла для чтения и записи и мне кое-что непонятно в данной программе:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <fstream.h>
int main()
{
     char fileName[80];
     char buffer[255];
     cout<<"File name: ";
     cin>>fileName;
 
     ofstream fout (fileName);
     fout<<"This line written directly to the file...\ n";
     cout<<"Enter text for the file: ";
     cin.ignore(1,'\ n');
     cin.getline(buffer,255);
     fout<<buffer<<"\ n";
     fout.close();
 
     ifstream fin(fileName);
     cout<<"Here's the contents of the file:\ n";
     char ch;
     while (fin.get(ch))
           cout<<ch;
     cout<<"\ n***End of file contents***\ n";
     fin.close();
  return 0;
}
Результат должен быть такой:
File name: test1
Enter text for the file: This text is written to the file!
Here's the contents of the file:
This line written directly to the file...
This text is written to the file!
***End of file contents***

Мне не понятно почему в содержимом файла отсутствует имя файла, т. е. test1 перед строчкой "This line ...", ведь мы строчку test1 занесли в массив fileName. Разъясните, пожалуйста.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.05.2013, 15:38     Запись в файл
Посмотрите здесь:

Запись в файл C++
запись в файл C++
Запись в файл C++
C++ Запись в файл
C++ Запись в файл
C++ Запись в файл
C++ запись в файл
C++ Запись в файл
Запись в файл C++
запись в файл с++ C++
C++ Запись в файл
C++ Запись в файл

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MeteorNEO
2 / 2 / 0
Регистрация: 20.04.2013
Сообщений: 15
01.05.2013, 16:00     Запись в файл #2
А почему имя файла должно быть в содержимом файла, собственно?
Строка ofstream fout (fileName); создает поток вывода в файл и только, а потом мы уже по этому потоку посылаем данные в файл т.е. fout<<...
Познающая
0 / 0 / 0
Регистрация: 22.11.2012
Сообщений: 25
01.05.2013, 19:10  [ТС]     Запись в файл #3
Цитата Сообщение от MeteorNEO Посмотреть сообщение
А почему имя файла должно быть в содержимом файла, собственно?
Строка ofstream fout (fileName); создает поток вывода в файл и только, а потом мы уже по этому потоку посылаем данные в файл т.е. fout<<...
Я конечно понимаю, что имя файла не должно быть в файле. Я так понимаю, что файл это и есть массив fileName, но вначале программы мы заносим в него test1, а затем туда же посылаем данные с помощью объекта fout. В чем я заблуждаюсь?
yoghurt92
374 / 345 / 22
Регистрация: 17.05.2012
Сообщений: 1,049
01.05.2013, 19:29     Запись в файл #4
Познающая, fileName всего-лишь хранит имя файла, содержимое файла в нем не храниться. С помощью fout вы сохраняете данные в сам файл а не массив fileName fileName выполнил свою задачу когда указал потоку ofstream куда записывать данные, если откроете папку с проектом, то увидите файл test1 и все что вы туда записали
Yandex
Объявления
01.05.2013, 19:29     Запись в файл
Ответ Создать тему
Опции темы

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