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

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

Войти
Регистрация
Восстановить пароль
 
thejadefalcon
0 / 0 / 0
Регистрация: 23.09.2013
Сообщений: 41
#1

Строки из файла - C++

13.12.2013, 17:32. Просмотров 215. Ответов 5
Метки нет (Все метки)

Здравствуйте. Мне нужна ваша помощь. Как брать поочередно строки из файла, что потом их как-то обрабатывать.
fgets берет строку, но всего лишь одну хоть и стоит вроде в цикл "пока не конец файла"..
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.12.2013, 17:32
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Строки из файла (C++):

Получить третий файл, содержащий чётные строки первого файла и нечётные строки второго файла - C++
Даны два файла, получить третий, содержащий чётные строки первого файла и нечётные строки второго файла. Вообще не имею понятия, как...

Как считать строки из файла, если там больше одной строки? - C++
Как считать строки из файла в массив. Если в файле одна строка, то нет проблем, но если несколько, то при использовании функции fgets ...

Переписать все цифры каждой строки файла в конец строки - C++
Содержимое текстового файла INPUT.TXT, разделенного на строки, переписать за один проход по файлу в текстовый файл OUTPUT.TXT, перенося при...

В конец каждой строки текстового файла дописать количество символов этой строки - C++
Помогите, нужно : "В конец каждой строки текстового файла дописать количество символов этой строки". Получается только в начало, не знаю...

Вывести строки файла, после строки добавляя, сколько раз в ней встретилось слово - C++
Напишите программу, которая считывает текст из файла и выводит на экран все строки файла, после каждой строки добавляя, сколько раз в ней...

Чтение из файла строки по началу строки или ее части - C++
Всем доброго времени суток! Большая просьба помочь! поступило задание, сделать словарь. Вводишь слов в консоли, а тебе выдает перевод....

5
alsav22
5435 / 4830 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
13.12.2013, 17:44 #2
Цитата Сообщение от thejadefalcon Посмотреть сообщение
хоть и стоит вроде в цикл "пока не конец файла"..
Вроде или стоит цикл? Код нужно выкладывать, ясновидящих тут нет.
0
sogooo
93 / 66 / 4
Регистрация: 11.12.2013
Сообщений: 309
13.12.2013, 17:48 #3
Цитата Сообщение от thejadefalcon Посмотреть сообщение
Здравствуйте. Мне нужна ваша помощь. Как брать поочередно строки из файла, что потом их как-то обрабатывать.
fgets берет строку, но всего лишь одну хоть и стоит вроде в цикл "пока не конец файла"..
Попробуй почитать про getline()
0
alsav22
5435 / 4830 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
13.12.2013, 18:00 #4
Цитата Сообщение от sogooo Посмотреть сообщение
Попробуй почитать про getline()
fgets() и getline() делают одно и тоже.
0
thejadefalcon
0 / 0 / 0
Регистрация: 23.09.2013
Сообщений: 41
13.12.2013, 18:11  [ТС] #5
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
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <string.h>
#include <cstdio>
#include <fstream>
#include <iostream>
#include <stdlib.h>
#include <conio.h>
 
using namespace std;
void main()
{
    char s[999];
    char symbols [53] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
    int i; int j;
    FILE *in, *out;
    in = fopen("in.txt", "r");
    out = fopen("out.txt", "a");
    while (!feof(in))
    {
        fgets(s, 999, in);
        i = 0;
        while (symbols[i] != '\0')
        {
            j = 0;
            while (s[j] != '\0')
            {
                if (s[j] != symbols[i])
                    s[j] = '_';
                j++;
            }
            fwrite(s, sizeof(int), 999, out);
            i++;
        }
        
    }
 
}
Вообщем по моим планам, моя программа должна брать построчно из файла, сравнивать посимвольно строку с массивом из латинских букв и если символ не латинская буква, программа должна заменить его на "_"
Но она даже не запускается, ругается на fwrite
И еще вопросик, какие заголовочные файлы лишние? Просто когда искал в интернете как реализовать тот или иной процесс - наподключал.
0
alsav22
5435 / 4830 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
13.12.2013, 18:36 #6
Открытие для чтения всегда проверять нужно:
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
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <string.h>
//#include <cstdio>
//#include <fstream>
//#include <iostream>
#include <stdlib.h>
#include <conio.h>
 
//using namespace std;
int main()
{
    char s[999];
    char symbols [53] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
    int i; int j;
    FILE *in, *out;
    in = fopen("in.txt", "r");
    if (in)
    {
        out = fopen("out.txt", "a");
        while (!feof(in))
        {
            fgets(s, 999, in);
            i = 0;
            while (symbols[i] != '\0')
            {
                j = 0;
                while (s[j] != '\0')
                {
                    if (s[j] != symbols[i])
                        s[j] = '_';
                    j++;
                }
                
                i++;
            }
            fwrite(s, sizeof(int), 999, out);
        }
    }
    else printf("Error!\n");
 
    getchar();
    return 0;
}
Цитата Сообщение от thejadefalcon Посмотреть сообщение
Но она даже не запускается, ругается на fwrite
Какими словами?
0
13.12.2013, 18:36
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.12.2013, 18:36
Привет! Вот еще темы с ответами:

Считать строки из файла, найти строки на определённую букву - C++
По заданию нужно вывести данные студентов, чьи фамилии начинаются на А и математику сдали на 8 или 9. Проблема в поиске фамилии на А,...

Написать программу копирования файла. В конец каждой строки файла дописать количество пробелов в строке - C++
Чтение происходит блоками. Обработать ошибки Я пока просто смогла скопировать один файл в другой, а как добавить количество пробелов...

Переписать все строки файла F.txt в файл G.txt, удаляя все пробелы в конце каждой строки - C++
помогите как можно быстрей Дан текстовый файл F.txt. Переписать все строки файла F.txt в файл G.txt, удаляя все пробелы в конце каждой...

Удаление строки из файла\либо удаление самого файла. - C++
День добрый, вот функция(используемые переменные объявленны ранее): void delete_cruise() { FILE *fout; open_file(&quot;abase.dat&quot;); ...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru