Другие языки программирования и технологии

Как в С++ вывести на экран содержимое файла?

ifstream file( "example.txt", ios::binary | ios::ate);
size_t file_size = file.tellg();

/////////////////////////

if( file_size ){

//std::unique_ptr buf(new std::uint8_t());
char* bufer = new char[file_size];

ifstream file( "example.txt", ios::binary);
file.read(bufer, file_size);

for(std::size_t i = 0; i < file_size; ++i){
cout << buffer[i]<<'\n';
}

delete []bufer;
}
Сергей Перих
Сергей Перих
30 074
Лучший ответ
1) прочитать из файла текст
2) вывести текст
Серж Жесть
Серж Жесть
24 328
#include "stdafx.h"
#include "stdio.h"// Заменить " " на < >
#include "locale.h"// Заменить " " на < >
#include "conio.h"// Заменить " " на < >

int main()
{
setlocale(0,"Rus");

FILE *F;
const char* fn="file_1.txt";
int c;

if(F=fopen(fn,"r"))
while((c=fgetc(F))!=EOF)
putch(c);
else
printf("Ошибка! Файл ""%s"" не найден.",fn);
fclose(F);

printf("\n\nPress any key for continue . .\n");
getch();

return 0;
}
Иманов Равиль
Иманов Равиль
11 953
Иманов Равиль Файл file_1.txt должен находиться в том же каталоге, что и основной файл программы.
Иманов Равиль #include "stdafx.h"
#include "stdio.h"// Заменить " " на < >
#include "locale.h"// Заменить " " на < >
#include "conio.h"// Заменить " " на < >

int main()
{
setlocale(0,"Rus");

FILE *F;
const char* fn="file_1.txt";
int c;

if(F=fopen(fn,"r"))
{
while((c=fgetc(F))!=EOF)
putch(c);
fclose(F);
}
else
printf("Ошибка! Файл ""%s"" не найден.",fn);

printf("\n\nPress any key for continue . .\n");
getch();

return 0;
}
Содержимое файла;
1) нужно подключить библотеку #include
2) в функции (main например) нужно сделать слудующее
ifstream (название но без этих скобочек например one) ("название файла, например file.txt");
char text[50];(это для того что бы он прочитал первую строчку с 50 символами, если надо 2 строчки char text[2][50] вроде так)

Если просто вывести на экран то что у тебя в функции, то нужно использоваться cout, например
char a = 'b';
cout << b << endl;
или
cout << "Hello wordl!" << endl;
getline(text, 50); (это что бы он прочилат именно строчку а не символ, если надо 2 строчки и вы указали char text[2][50] , то getline(text, 2, 50) но это врятли правильно, я просто забыл как две и более строчек выводить)
cout << text << endl;
one.close();
1 3
1 3
881

Похожие вопросы