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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 17, средняя оценка - 4.88
NAYGER
1 / 1 / 0
Регистрация: 30.11.2009
Сообщений: 26
#1

Поиск в файле и вывод на экран - C++

07.12.2009, 07:40. Просмотров 2113. Ответов 7
Метки нет (Все метки)

Имеется txt файл, произвольно заполненный:
01101210
:2
//пустая строка
12434
:8
//пустая строка
0110
:9
//пустая строка
849
:11

Как найти в файле значение N (пусть N=0110) и если N совпало со строкой (полное совпадение), то вывести результат стоящий на следующей строке после знака ( : ).
В этом варианте должна выводиться на экран 9

C++
1
2
3
4
5
6
7
8
9
10
11
12
FILE *file;
char* file_name = "file.txt";
file = fopen ("file.txt","r");
while (!feof(file))
{
//код необходимый для поиска
}
UpdateData(true);
//вывод результата в поле static или edit
UpdateData(false);
 
fclose(file);
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.12.2009, 07:40
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Поиск в файле и вывод на экран (C++):

Поиск в .txt файле и вывод на экран - C++
Такая проблема, необходимо осуществить поиск слова в .txt файле , если данной слово найдено, то распечатать строку с этим словом, и...

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

Работа с файлами (поиск и вывод чисел в файле) - C++
Как на с++ сделать программу, которая в текстовому файле найдет и выведет на дисплей все числа? Есть ли для этого функции?

Как сделать поиск в JSON-файле с выводом на экран - C++
Разработать класс в C++, для нахождения в json файле элемента по имени, с выводом содержимого на экран в среде С++? Я знаю, что для файла...

Реализовать поиск указанной информации в заданном файле (файловый ввод/вывод) - C++
Сведения об ученике состоят из его имени и фамилии и названия класса (года обучения и буквы), в котором он учится. Дан файл ,содержащий...

Реализовать поиск значения в файле и вывод на консоль структуры, в которой расположено значение - C++
Как сделать поиск значения в файле и вывод на консоль структуры, в которой расположено значение?

7
accept
4822 / 3243 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
07.12.2009, 09:16 #2
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <stdio.h>
#include <string.h>
 
main()
{
    FILE *ifp;
    char f1[100],
         f2[100];
    const char *patt = "0110";
    
    if (!(ifp = fopen("file", "r")))
        return 1;
    
    while (fscanf(ifp, "%s\t:%s\t", f1, f2) == 2)
        if (!strcmp(f1, patt))
            printf("%s" "\n", f2);
    
    fclose(ifp);
    
    return 0;
}
Добавлено через 1 минуту
C
1
while (!feof(file))
при ошибке чтения такой флаг не выставится
1
NAYGER
1 / 1 / 0
Регистрация: 30.11.2009
Сообщений: 26
07.12.2009, 09:56  [ТС] #3
Две ошибки на return 1 и return 0:
error C2562: 'OnOK' : 'void' function returning a value

Может так сделать?
C++
1
if (!(ifp = fopen("file", "r"))) break;
Использую Visual C++ 6.0

Добавлено через 19 минут
C++
1
printf("%s" "\n", f2); // вывод на экран
И еще хотелось бы узнать, как будет выглядеть код для вывода результата в поле Static или Edit?
C++
1
2
3
UpdateData(true);
S= ???; //вывод в поле Static
UpdateData(false);
0
accept
4822 / 3243 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
07.12.2009, 10:06 #4
там int main

C
1
int main(void)
break срабатывает только для циклов и switch, return относится к функции main (результат возвращается в операционную систему, число можно проанализировать и выполнить команды дальше какие-нибудь)

поля, если это строки, попробуй strcpy(поле, f2)
1
NAYGER
1 / 1 / 0
Регистрация: 30.11.2009
Сообщений: 26
07.12.2009, 10:47  [ТС] #5
Поле Static:IDC_STATIC1 Type:CString Member:S

strcpy(S, f2);

Ошибка:
: error C2664: 'strcpy' : cannot convert parameter 1 from 'class CString' to 'char *'

В поле выбора типа для Static только Cstring.
0
NAYGER
1 / 1 / 0
Регистрация: 30.11.2009
Сообщений: 26
07.12.2009, 15:23  [ТС] #6
Ну так что, как ошибку исправить?

Добавлено через 23 минуты
Все, вроди бы разобрался
0
NAYGER
1 / 1 / 0
Регистрация: 30.11.2009
Сообщений: 26
08.12.2009, 10:18  [ТС] #7
А если txt файл будет иметь вид:
01010101010110101010101010101010110101101011101010
00000000000000001111111111111111111111111111111111
:8

01010111111111111111111111111111111111000000000000
:5

11111111111111111111111111111111111111111111111111
01011111111111110000000000000000000000000000000000
11111111000000000000111111110000000000011111111110
:7

как быть в таком случае?

Добавлено через 35 минут
Все, кажись тоже разобрался, надо вместо
C++
1
const char *patt = "0110";
написать
C++
1
2
char patt[10000] ="01010101010110101010101010101010110101101011101010
00000000000000001111111111111111111111111111111111";
0
accept
4822 / 3243 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
08.12.2009, 11:07 #8
malloc ещё есть, там поля создать, шаблон
для копирования strcpy
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.12.2009, 11:07
Привет! Вот еще темы с ответами:

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

Поиск и вывод на экран терминала элемента массива - C++
Задача такая: нужно при вводе с клавиатуры имени объекта, расположенного в массиве структуры , выполнялся поиск всех переменных присвоенных...

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

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


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

Или воспользуйтесь поиском по форуму:
8
Yandex
Объявления
08.12.2009, 11:07
Ответ Создать тему
Опции темы

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