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

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

Войти
Регистрация
Восстановить пароль
 
Dady
2 / 2 / 0
Регистрация: 20.03.2012
Сообщений: 53
#1

Работа с файлами - C++

22.06.2012, 07:34. Просмотров 373. Ответов 2
Метки нет (Все метки)

Друзья, помогите, нужно исправить код так, чтобы программа находила определённую последовательность символов в файле, в котором текст написан без пробелов. Сейчас программа находит последовательность символов, которая отделена пробелами. Также нужно использовать функции fopen, fclose и не использовать поток.
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
#include "stdafx.h"
#include <iostream> 
#include <fstream> 
using namespace std; 
int main() 
{   setlocale(LC_ALL,"Russian"); 
    int x;
    ifstream infile; // входной поток
    infile.open("Text.txt");  // открываем файл
    char buffer[100]; 
    char str[10]; // вводим последовательность символов    
    cout << "Введите последовательность символов ( вводим на английском ) "; 
    cin >> str; 
        while(!infile.eof()) // считываем до конца файла 
        { 
            infile >> buffer; // считываем в буфер 
            if(!strcmp(str, buffer))  // сравниваем строки
            {x=1;
              cout << "Совпадение обнаружено " << buffer << endl; // совпадение обнаружено выходим из цикла                                
            } else x=2;
             
        } if(x!=1)
        {cout << "Совпадений нет"<< endl;}
        system("Pause"); 
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.06.2012, 07:34     Работа с файлами
Посмотрите здесь:

C++ Работа с файлами
C++ Работа с файлами
C++ работа с файлами
C++ Работа с файлами
C++ Работа с файлами
C++ Работа с файлами
C++ Работа с файлами
Работа с файлами C++
C++ Работа с файлами
C++ Работа с файлами
Работа с файлами C++
C++ Работа с файлами

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
enk
45 / 44 / 7
Регистрация: 16.06.2012
Сообщений: 177
22.06.2012, 08:33     Работа с файлами #2
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
#include <iostream>
#include <fstream>
 
using namespace std;
 
int main()
{
    ifstream input("Text.txt");
    string sTempStr, sInputStr;
    cin >> sInputStr;
    int iLineNumber = 0, iFound = -1;
    while(!input.eof())
    {
        getline(input, sTempStr);
        iLineNumber++;
        if (sTempStr.find(sInputStr) != string::npos)
        {
            cout << iLineNumber << ". found: " << sTempStr.find(sInputStr) << endl;
            iFound = 1;
        }
    }
    if (iFound == -1)
        cout << "Not found" << endl;
    input.close();
}
Van111
кодер с++
208 / 187 / 4
Регистрация: 03.08.2011
Сообщений: 2,587
Записей в блоге: 12
22.06.2012, 10:28     Работа с файлами #3
Dady, я код писал в блокноте
C++
1
2
3
4
5
6
char *s=new char[10000];
FILE *f=fopen("c:\\1.txt","rt");
for(int i=0; !feof(f) ; i++)   // быдло цикл, самое быстрое это проецировать файл в память, ну это тебе не подходит
s[i]=fgetch(f);                  
strstr(s,"строка которую я ищу");
fclose(f);
Yandex
Объявления
22.06.2012, 10:28     Работа с файлами
Ответ Создать тему
Опции темы

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