1 / 1 / 1
Регистрация: 17.10.2014
Сообщений: 153

Программа не считывает с файла текст полностью

07.04.2015, 07:25. Показов 2753. Ответов 22
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Делаю алфавитно-частотный словарь, и во время передачи всех символов из файла в строку(дабы дальше я с помощью токенов строку разделил) у меня почему-то цикл при EOF прекращается....

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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
#include <iostream>
#include <fstream>
#include <locale> 
#include "head.h"
#include <cstdio>
 
using namespace std;
 
int main()
{
system("CLS");
setlocale(LC_ALL,"rus");
 
 
char *new_word;             // Новое слово
 
FILE *in;                   // Исходный файл
in = fopen("input.txt", "r");   //Открываем файл
 
 
int i=0;    //Для подсчёта кол-ва символов в файле
if(in != NULL)  //если файл удалось открыть
{
    //char ch;  //Чтобы работать с символом
    //while((ch = getc(in)) != EOF) //пока не дойдём до конца файла
    //  i++;        //Получаем кол-во символов, чтобы позже выделить память динамически
    //cout << i ;
 
    // перемотать на конец файла
 
    fseek( in, 0, SEEK_END );
 
    // получить размер файла
    i = ftell( in );
    cout << i;
    
} 
else
{
    cout << "Файла нету... Обидка :(";
}
 
char *stroka = "\0";
stroka = new char[++i];
memset(stroka, '\0', sizeof(char)*i);   // Заполнение массива '\0'
 
fseek(in , 0, SEEK_SET); //перекиываем каретку в начало
 
char ch;
int z = 0;
while((ch = getc(in)) != EOF)
    stroka[z++] = tolower(ch); //ВОТ В ЭТОМ МЕСТЕ у меня программа должна проходить по всему тексту файла, но почему-то берёт только "asd q q q q q Название Название <Велика", а дальше выходит из цикла и другой текст не читает... 
stroka[z] = '\0';
 
 
 
system("pause");
delete []stroka; //Очищаем память
 
}
В чём проблема?
Вот пример текста:
"
asd q q q q q Название Название <Великая война> стало использоваться в СССР после радиообращения Сталина к народу 3 июля 1941 года[2]. В обращении эпитеты <великая> и <отечественная> употребляются раздельно[3]. В 1914-1915 гг. название <Великая Отечественная война> иногда применялось в неофициальных публикациях к Первой мировой войне[4]. Впервые это словосочетание было применено к войне СССР с Германией в статьях газеты <Правда> от 23 и 24 июня 1941 года[5][6] и поначалу воспринималось не как термин, а как одно из газетных клише, наряду с другими подобными словосочетаниями: <священная народная война>, <священная отечественная народная война>, <победоносная отечественная война>. Термин <Отечественная война> был закреплён введением военного Ордена Отечественной войны, учреждённого Указом Президиума Верховного Совета СССР от 20 мая 1942 года. Наименование сохраняется в постсоветских государствах (укр. Велика Вітчизняна війна, белор. Вялікая Айчынная вайна, абх. Аџьынџьт?ылат?и Еибашьра ду и др.). В странах, не входивших в состав СССР, где русский язык не является основным языком общения, название <Великая Отечественная война> практически не используется. В англоязычных странах его заменяет термин - Eastern Front (World War II) (восточный фронт (второй мировой войны)), в немецкой историографии - Deutsch-Sowjetischer Krieg, Russlandfeldzug, Ostfeldzug (немецко-советская война, русский поход, восточный поход).
"
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
07.04.2015, 07:25
Ответы с готовыми решениями:

Файлы: программа считывает текст из файла, добавляет в него текст, переименовывает, копирует и удаляет файл
составить программу,которая обеспечивает выполнение след.операций над текстовым файлом:считывает текст из файла,добавляет в него...

Обрабатываемый текст программа считывает из файла
// программа считывает текст с консоли(то есть те, которые мы вводим), как сделать, чтобы она считывала с файла? #include...

программа, которая считывает текст из файла
Написать программу, которая считывает текст из файла и выводит на экран толь* ко предложения, содержащие заданное с клавиатуры слово. ...

22
7804 / 6568 / 2988
Регистрация: 14.04.2014
Сообщений: 28,705
11.04.2015, 15:37
Лучший ответ Сообщение было отмечено BabaSveta как решение

Решение

Студворк — интернет-сервис помощи студентам
А '\n' и '\t' почему нет среди разделителей? И для чего '\b'?
1
3178 / 1937 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
11.04.2015, 15:56
Цитата Сообщение от BabaSveta Посмотреть сообщение
решение этой проблемы.
Выбросить и написать правильно.

concordancer
Concordancer - a program to make concordances for text files
Вложения
Тип файла: 7z result.txt.7z (3.7 Кб, 4 просмотров)
0
1 / 1 / 1
Регистрация: 17.10.2014
Сообщений: 153
11.04.2015, 15:58  [ТС]
ну я дебил... Да, ошибся с \b, поменял на \n \t всё заработало нормально!))
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
11.04.2015, 15:58
Помогаю со студенческими работами здесь

программа, которая считывает текст из файла
Здравствуйте все, подкажите с программой: необходимо написать программу на языке С#, которая считывает текст из файла и выводит на экран...

Программа, которая считывает текст из файла и выводит его на экран
Помогите, пожалуйста, перевести код из С в C# Задание: Программа, которая считывает текст из файла и выводит его на экран, после...

Программа, которая считывает текст из файла, и выводит на экран только цитаты
Написать программу, которая считывает текст из файла и выводит на экран только цитаты, то есть предложения, заключенные в кавычки. не...

программа считывает английский текст из файла и выводит на экран слова начинающиеся с гласных букв
3) Написать программу, которая считывает английский текст из файла и выводит на экран слова начинающиеся с гласных букв. Очень нужно

программа, которая считывает текст из файла и выводит на экран только предложения, не содержащие запятых
написать программу, которая считывает текст из файла и выводит на экран только предложения, не содержащие запятых. делаю на application. ...


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

Или воспользуйтесь поиском по форуму:
23
Ответ Создать тему
Опции темы

Новые блоги и статьи
[golang] Угол между стрелками часов
alhaos 12.05.2026
По заданным значениям часа и минуты необходимо определить значение меньшего угла между стрелками аналогового циферблата часов. import "math" func angleClock(hour int, minutes int) float64 { . . .
Debian 13: Установка Lazarus QT5
ВитГо 09.05.2026
Эта инструкция моя компиляция инструкций volvo https:/ / www. cyberforum. ru/ blogs/ 203668/ 10753. html и его же старой инструкции по установке Lazarus с gtk2. . .
Нейросеть на алгоритме "эстафета хвоста" как перспектива.
Hrethgir 06.05.2026
На десерт, когда запущу сервер. Статья тут https:/ / habr. com/ ru/ articles/ 1030914/ . Автор я сам, нейросеть только помогает в вопросах которые мне не известны - не знаю людей которые знали-бы. . .
Асинхронный приём данных из COM-порта
Argus19 01.05.2026
Асинхронный приём данных из COM-порта Купил на aliexpress термопринтер QR701. Он оказался странным. Поключил к Arduino Nano. Был очень удивлён. Наотрез отказывается печатать русские буквы. Чтобы. . .
попытка написать игровой сервер на C++
pyirrlicht 29.04.2026
попытка написать игровой сервер на плюсах с открытым бесконечным миром. возможно получится прикрутить интерпретатор питон для кастомизации игровой логики. что есть на текущий момент:. . .
Контроль уникальности выбранного документа-основания при изменении реквизита
Maks 28.04.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРемонтСпецтехники", разработанного в КА2. Задача: уведомлять пользователя, если указанная заявка (документ-основание). . .
Благородство как наказание
Maks 24.04.2026
У хорошего человека отношения с женщинами всегда складываются трудно. А я человек хороший. Заявляю без тени смущения, потому что гордиться тут нечем. От хорошего человека ждут соответствующего. . .
Валидация и контроль данных табличной части документа перед записью
Maks 22.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в КА2. Задача: контроль и валидация данных табличной части документа перед записью с учетом регламента компании. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru