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

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

Войти
Регистрация
Восстановить пароль
 
virtuos553
48 / 3 / 1
Регистрация: 18.12.2012
Сообщений: 247
Записей в блоге: 1
#1

Как считать из файла по определенному принципу - C++

01.06.2014, 12:21. Просмотров 200. Ответов 4
Метки нет (Все метки)

В файле информация хранится по определенному виду
-1
-1
80

........


-1
-1
444

Как считать, все что находится после -1 -1 80 и перед -1 -1 444?
Очень нужна ваша помощь, сам пытался разобраться со строками, пока не очень удачно
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.06.2014, 12:21
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как считать из файла по определенному принципу (C++):

Группирование букв из файла по принципу Фибоначчи - C++
Добрый вечер всем! Во время выполнения задания возникла проблема. Надо создать файл с символами(буквы и цифри). Подсчитать кол-во...

Как считать с файла - C++
Вечер добрый! Не могли бы подсказать , как считать с файла в list(список) объект.

Как считать массив из файла - C++
#include <iostream> #include <fstream> using namespace std; int main() { setlocale(0,""); const int...

Как считать числа из файла? - C++
Дана последовательность целых чисел x1,x2,...,x20(читаются из файла).Известно,что в ней есть два одинаковых числа. Вывести в другой файл...

Как считать вектор из файла? - C++
как считать вектор из файла?

как считать текст из файла в С++? - C++
Подскажите пожалуйста, как считать текст из файла в массив типа char в С++? Заранее спасибо!

4
xtorne21st
интересующийся
304 / 275 / 19
Регистрация: 25.09.2010
Сообщений: 1,056
01.06.2014, 12:31 #2
Цитата Сообщение от virtuos553 Посмотреть сообщение
Очень нужна ваша помощь, сам пытался разобраться со строками, пока не очень удачно
Читаешь строки при помощи getline и сохраняешь результат в лист строк. Как только нашёл -1, -1, 80 запомнил индекс (при работе с std::list - iterator) следующей строки. Продолжаешь читать дальше и записывать. Если нашёл -1, -1, 444 - вернулся на строку перед этим паттерном и запомнил итератор. А дальше считываеть всё между итераторами. Метод топора. Можно сразу счиать весь файл и дальше парсать... Тут, как тебе больше нравится...
0
ExModE
2 / 2 / 2
Регистрация: 04.03.2011
Сообщений: 27
01.06.2014, 12:55 #3
Как то так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <stdio.h>
#include <conio.h>
#include <iostream>              
#include <fstream>               
#include <sstream> 
#include <string.h>
#pragma warning(disable: 4996)
using namespace std;
 
int main()
{
    ifstream in("input.txt");
    ostringstream out;
    out << in.rdbuf();
    char * fileinf = new char[out.str().length()];
    strcpy(fileinf, out.str().c_str());
    char * begin = strstr(fileinf, "-1\n-1\n80\n")+9;
    char * end = strstr(fileinf, "-1\n-1\n400\n");
    for (char * cur = begin; cur != end; cur++)
        printf("%c", *cur);
    _getch();
    return 0;
}
0
virtuos553
48 / 3 / 1
Регистрация: 18.12.2012
Сообщений: 247
Записей в блоге: 1
01.06.2014, 13:48  [ТС] #4
можете пояснить пожалуйста строчки кода?

Добавлено через 24 минуты
лист строк? это контейнер? а если строк слишком много? это же много памяти занимать будет

Добавлено через 43 секунды
нельзя ли как то построчно считывать из файла, до тех пор пока не найдется три строки такого вида
-1
-1
55
0
xtorne21st
интересующийся
304 / 275 / 19
Регистрация: 25.09.2010
Сообщений: 1,056
02.06.2014, 01:05 #5
Цитата Сообщение от virtuos553 Посмотреть сообщение
нельзя ли как то построчно считывать из файла, до тех пор пока не найдется три строки такого вида
можно...
0
02.06.2014, 01:05
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.06.2014, 01:05
Привет! Вот еще темы с ответами:

Как считать с текстового файла? - C++
Подскажите, пожалуйста, как можно считать предложение из текстового файла. Вот задачка: Написать программу, подсчитывающую число...

Как считать текст из файла в С++? - C++
Подскажите пожалуйста, как считать текст из файла в массив типа char в С++? Заранее спасибо!

Как считать текст с файла ? - C++
Как считать текст с файла (например .txt) а потом в другой пустой файл записать текст с первого документа?

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


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

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

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