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

Чтение из файла read и rdbuf - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Использованием классов для создания массива http://www.cyberforum.ru/cpp-beginners/thread650074.html
Здравствуйте.Подскажите как правильно можно передать созданный массив из void matrix::cmatrix(int x,int y) в другие функции класса matrix. class matrix { public: void cmatrix(int,int);...
C++ Как выделяется память под массив string? В общем читаю книжку, там объявлены два массива int* p = new int, int* v = new string... бла бла бла ....а потом -> ...После резервирования области памяти, предназначенной для хранения объектов...и... http://www.cyberforum.ru/cpp-beginners/thread650069.html
Чтения файла в динамический массив C++
Добрый день. Файл состоит из 6 столбцов и миллионов рядков. Нужно прочесть все это в динамический массив, проблема заключается в том что файл весит очень много(больше 3 гб). Как можно осуществить...
Скопировать двумерный массив в vector C++
Добрый день всем. подскажите пожалуйста, как скопировать двумерный массив в vector? int i = {0}; vector<vector<int> > _v; _v = i; // Не работает. Есть идеи? весь день колупаюсь. и copy делаю...
C++ Защита const http://www.cyberforum.ru/cpp-beginners/thread649945.html
const Int& operator= (const Int& a) Отчего защищает первый const
C++ Определить, попадает ли точка с заданными координатами в область Написать программу, которая определяет, попадает ли точка с заданными координатами в область, закрашенную из рисунка серым цветом. Результат работы программы вывести в виде текстового со-общения.... подробнее

Показать сообщение отдельно
daite_dve
0 / 0 / 0
Регистрация: 06.02.2012
Сообщений: 37

Чтение из файла read и rdbuf - C++

11.09.2012, 13:40. Просмотров 3602. Ответов 6
Метки (Все метки)

Всем доброго дня!

Не могу понять почему при использовании функции read() появляются какие-то кракозябры, хотя при использовании rdbuf() все отрабатывается нормально. Скрин выполнения программы во вложении. Вот код:

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
26
27
28
29
30
31
32
33
#include<iostream>
#include<fstream>
#include<windows.h>
using namespace std;
 
int main(int argc, char* argv[])
{
    int length;
    char* buffer;
 
    cout << endl;
    Sleep(500);
 
    cout << "Source filename is: " << argv[1] << endl ;     // source filename
    Sleep(500);
 
    ifstream srcfile;
    srcfile.open(argv[1]);
    srcfile.seekg (0, ios::end);
    length = srcfile.tellg();
    
    srcfile.seekg (0, ios::beg);
    buffer = new char [length];
    srcfile.read(buffer, length);       // using "read" function
    cout << buffer << endl;
    Sleep(500);
 
    srcfile.seekg (0, ios::beg);
    cout << srcfile.rdbuf() << endl;    // using "rdbuf" function
    Sleep(500);
    
    return 0;
}
0
Миниатюры
Чтение из файла read и rdbuf  
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru