Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Прочитать содержимое файла

374
06 сентября 2002 года
Pennywise
158 / / 20.05.2000
Нужно прочитать посимвольно текстовый файл в консольном С++..........Cодержимое файла присваиваеться массиву типа text[1000].
Далее могу делать с массивом разные операции...например подсчет пробелов или запятых в тексте..........Как можно это осуществить без потери форматирования.......?
384
06 сентября 2002 года
mikeshilkin
95 / / 20.04.2000
Цитата:

On 2002-09-06 0000, Pennywise wrote
Нужно прочитать посимвольно текстовый файл в консольном С++..........Cодержимое файла присваиваеться массиву типа text[1000].
Далее могу делать с массивом разные операции...например подсчет пробелов или запятых в тексте..........Как можно это осуществить без потери форматирования.......?



Либо я что-то не понял, либо это можно сделать чтением (можно посимвольно) из файла, а там уж делай что хочешь

374
06 сентября 2002 года
Pennywise
158 / / 20.05.2000
Тут вроде бы все ясно.........
Нужно считать содержимое файла в массив....
Форматирование не должно быть нарушено..
Это значит все невидимые знаки...типа пробела, знака новой строки...не должны исчезать фиг его знает куда........
точная копия файла в массиве....что бы в результате (после работы с ним) можно было массив запихать обратно в новый текстовый файл......с тем же форматированием, что и было раньше........


697
07 сентября 2002 года
bjaka_max
22 / / 20.04.2000
#include <fstream.h>

ofstream in(&quot;bla-bla.bla&quot;,ios_basein |
ios_baseout | ios_basebinary);
if(!in)
{
//Ошибка открытия
}
i=0;
while(!in.eof)
in >> text[i++];//вроде так
// Делаешь что надо
ofstream out(&quot;bla-bla.bla&quot;,ios_basein |
ios_baseout | ios_basebinary | ios_basetrunc);
if(!out)
{
//Опять ошибка открытия
}
for(int j=0;j<i;j++)
out << text[j];
250
08 сентября 2002 года
Joker
1.4K / / 20.02.2000
Цитата:

On 2002-09-07 0957, bjaka_max wrote
#include <fstream.h>

ofstream in(&quot;bla-bla.bla&quot;,ios_basein |
ios_baseout | ios_basebinary);
if(!in)
{
//Ошибка открытия
}
i=0;
while(!in.eof)
in >> text[i++];//вроде так
// Делаешь что надо
ofstream out(&quot;bla-bla.bla&quot;,ios_basein |
ios_baseout | ios_basebinary | ios_basetrunc);
if(!out)
{
//Опять ошибка открытия
}
for(int j=0;j<i;j++)
out << text[j];



Юзай WinApi, все побыстрей работать будет и код поменьше будет CreateFile ReadFile

// http//www.sp1r1tual.com

374
08 сентября 2002 года
Pennywise
158 / / 20.05.2000
On 2002-09-07 0957, bjaka_max wrote
#include <fstream.h>

ofstream in(&quot;bla-bla.bla&quot;,ios_basein |
ios_baseout | ios_basebinary);
if(!in)
{
//Ошибка открытия
}
i=0;
while(!in.eof)
in >> text[i++];//вроде так
// Делаешь что надо
ofstream out(&quot;bla-bla.bla&quot;,ios_basein |
ios_baseout | ios_basebinary | ios_basetrunc);
if(!out)
{
//Опять ошибка открытия
}
for(int j=0;j<i;j++)
out << text[j];
[/quote]
Текст сохраняеться в массив без невидимых знаков....

2Joker
Ты не мог бы написать пример для CreateFile, ReadFile ?
4
08 сентября 2002 года
mike
3.7K / / 01.10.2002
1. переносы строки будут бится, если файл открыт как текстовый.

2. через WinAPI быстрее не будет.

все гораздо проще
-----------------------------
char txt[1000];

FILE *fp=fopen(&quot;file.txt&quot;,&quot;rb&quot;);
fread(&amp;txt,1,1000,fp);
fclose(fp);
-----------------------------

fread возвращает количество считанных байт. Если оно не 1000, то считан последний блок.

RTFM
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог