12 / 12 / 4
Регистрация: 07.09.2012
Сообщений: 542
1

Чтение данных из текстового файла

19.10.2013, 00:59. Показов 4724. Ответов 11
Метки нет (Все метки)

Как считать данные (текст) из текстового файла в переменную String до символа {, затем до символа }? Если я не знаю сколько мне надо считывать символов, то есть не могу считать их например в char х[100] так как из может быть очень много?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
19.10.2013, 00:59
Ответы с готовыми решениями:

Чтение кода из текстового файла
Здравствуй. Прошу помочь. читаем текстовый файл с кодом и построчно его проверяем. Я очень слаб в...

Чтение русских символов из текстового файла
Извините если эта проблема уже обсуждалась, но я к сожалению темы так и не нашел. Цель - считать...

Чтение и анализирование строк из текстового файла
Делаю программу, нужна помощь. Суть программы в том, что она в текстовом файле, где в строке...

Преобразование текстового файла в двоичный и чтение исходных данных из двоичного файла.
#include<iostream> #include<fstream> #include<locale.h> #include<iomanip> #include <cstdlib>...

11
435 / 402 / 57
Регистрация: 06.02.2012
Сообщений: 1,384
19.10.2013, 02:52 2
Как правило в память считывается весь файл или его кусочек (где искать), и уже в памяти этот файл потрошится. Считывать из файла по байту не оптимально.
1
1 / 0 / 0
Регистрация: 18.10.2013
Сообщений: 28
19.10.2013, 10:03 3
потоки юзать можно ?
тогда пиши так, а потом фильтруй, что тебе нужно

C++ (Qt)
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
#define N 100
 
typedef struct  STR{
    char your_file_struct[N];
    }
    st;
 
    st sts[N];
 
 
 ifstream ar("in.txt");
 if (ar.fail()){
     ShowMessage("Нет файла, положите\создайте его в каталоге с программой");
     exit(1);}
 
    n=count(istreambuf_iterator<char>(ar),
    istreambuf_iterator<char>(), '\n');
 
    ifstream in;
    in.open("in.txt");
   
     for (int i = 0; i < n; ++i)
          in>>sts[i].your_file_struct;
            //тут можно считывать ещё куда-то 
         
        in.close();
        
 
for (int i = 0; i < n; i++) {
 cout<<sts[i].your_file_struct;
//если вывод в грид, то 
// Form1->StringGrid1->Cells[0][i]=sts[i].your_file_struct;
вместо структуры можно юзать что хочешь
0
12 / 12 / 4
Регистрация: 07.09.2012
Сообщений: 542
19.10.2013, 12:28  [ТС] 4
У меня в файле куча срок разной длинны, как определить, что прочитан весь файл?

Добавлено через 15 минут
Если у меня там будет тысяч 100 слов, а как мне потом эту переменную разбить на строки до нужного мне символа? Может можно как-нибудь сразу читать до нужно символа в строку типа стринг, затем короткая обработка сроки, затем чтение дальше?
0
1 / 0 / 0
Регистрация: 18.10.2013
Сообщений: 28
19.10.2013, 12:40 5
Цитата Сообщение от klynxe Посмотреть сообщение
как определить, что прочитан весь файл?
C
1
2
3
 
 n=count(istreambuf_iterator<char>(ar),
 istreambuf_iterator<char>(), '\n');
ar - твой поток
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
32489 / 20975 / 8115
Регистрация: 22.10.2011
Сообщений: 36,248
Записей в блоге: 7
19.10.2013, 14:34 6
Потоки здесь - как козе баян. 100К строк TStringList пережевывает свободно (да и на 10М не поперхнется), так что просто заливаешь всё, что есть в файле в TStringList и потом обрабатываешь данные оттуда...
1
12 / 12 / 4
Регистрация: 07.09.2012
Сообщений: 542
19.10.2013, 23:03  [ТС] 7
Цитата Сообщение от UI Посмотреть сообщение
Потоки здесь - как козе баян. 100К строк TStringList пережевывает свободно (да и на 10М не поперхнется), так что просто заливаешь всё, что есть в файле в TStringList и потом обрабатываешь данные оттуда...
Как в него запихать строки до нужного символа?
0
435 / 402 / 57
Регистрация: 06.02.2012
Сообщений: 1,384
19.10.2013, 23:08 8
Цитата Сообщение от klynxe Посмотреть сообщение
Как в него запихать строки до нужного символа?
Повторюсь
Цитата Сообщение от UI Посмотреть сообщение
так что просто заливаешь ВСЁ, что есть в файле в TStringList и потом обрабатываешь данные ОТТУДА...
1
12 / 12 / 4
Регистрация: 07.09.2012
Сообщений: 542
19.10.2013, 23:10  [ТС] 9
Все в одну строку???

Добавлено через 34 секунды
Или мне потом по всем строкам в объекте бегать?
0
435 / 402 / 57
Регистрация: 06.02.2012
Сообщений: 1,384
19.10.2013, 23:13 10
Судя по всему, по всем строкам бегать
1
12 / 12 / 4
Регистрация: 07.09.2012
Сообщений: 542
19.10.2013, 23:15  [ТС] 11
То есть я пишу TStringList загузить из файла, а потом бегаю по нему и читаю чего в нем?
0
435 / 402 / 57
Регистрация: 06.02.2012
Сообщений: 1,384
20.10.2013, 01:41 12
Да.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
20.10.2013, 01:41
Помогаю со студенческими работами здесь

Чтение данных из текстового файла
Добрый день! Подскажите, пожалуйста, как можно считать (из текстового файла) строку только до...

Чтение данных из текстового файла
#include &quot;stdafx.h&quot; #include &lt;stdio.h&gt; #include &lt;math.h&gt; using namespace System; double...

Чтение данных из текстового файла
Подскажите как считать с текстового файла последних десять строчек если если файл записан таким...

Чтение данных из текстового файла
Всем большой привет! Люди помогите с таким вопросом! У меня есть текстовый файл, Мне нужно что бы...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru