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

Обработка файловой информации - C++

Восстановить пароль Регистрация
 
Devil7
0 / 0 / 0
Регистрация: 05.10.2011
Сообщений: 97
02.03.2012, 21:25     Обработка файловой информации #1
Будте добры, помогите разобраться с задачей: дан текстовый файл, фразы в котором отделены друг от друга точками, а слова – пробелами и знаками препинания. Оставить в этом файле только те фразы, в которых имеется числовая информация. Любой помощи буду благодарен. Спасибо.
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.03.2012, 21:25     Обработка файловой информации
Посмотрите здесь:

C++ С++ Обработка текстовой информации
C++ ОБРАБОТКА СИМВОЛЬНОЙ ИНФОРМАЦИИ В С++
Обработка символьной информации C++
обработка символьной информации C++
C++ Обработка символьной информации
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
retmas
Жарю без масла
803 / 685 / 143
Регистрация: 13.01.2012
Сообщений: 1,580
02.03.2012, 21:32     Обработка файловой информации #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
читаешь файл по фразам
C++
1
2
3
4
ifstream f("file");
string phrase;
...
getline(f, phrase, '.');
проверяешь каждую фразу на содержание в ней цифр
C++
1
2
if(phrase.find_first_of("0123456789") != string::npos)
    ...
Devil7
0 / 0 / 0
Регистрация: 05.10.2011
Сообщений: 97
05.03.2012, 20:21  [ТС]     Обработка файловой информации #3
Фразой тут является предложение от точки до точки. Вот если какая-либо числовая информация встретится, то все предложение нужно оставить. Все остальное удалить. Вот мое тело, но как сделать, что бы осталось целое предложение не могу придумать(

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# include <stdio.h>
 
int main ()
{
    char n;
    FILE *fin;
    if((fin=fopen("read.txt","rt"))==0)
    {
        printf("File can not found");
        return 1;
    }
    while (!feof(fin))
    {
        fscanf(fin,"%c",&n);
        printf("%c",n);
    }
    fclose(fin);
}
Добавлено через 1 час 42 минуты
.....

Добавлено через 21 минуту
........

Добавлено через 31 минуту
(((((

Добавлено через 6 минут
Аааа((( никто не отвечает))
Avazart
 Аватар для Avazart
6906 / 5146 / 253
Регистрация: 10.12.2010
Сообщений: 22,639
Записей в блоге: 17
05.03.2012, 20:25     Обработка файловой информации #4
использовать то что retmas написал: записывать не посимвольно, а предложениями которые записывать в строку string phrase
Devil7
0 / 0 / 0
Регистрация: 05.10.2011
Сообщений: 97
05.03.2012, 20:32  [ТС]     Обработка файловой информации #5
Avazart, было бы любезно с вашей стороны если объяснили, какой смысл содержат строки retmas, точнее их спицифика работы и функция. В интернете ищу целый день, никак ничего не мог унайти подобного( Спасибо.
Avazart
 Аватар для Avazart
6906 / 5146 / 253
Регистрация: 10.12.2010
Сообщений: 22,639
Записей в блоге: 17
05.03.2012, 20:47     Обработка файловой информации #6
Скачайте к примеру книгу Шилда "Самоучитель" там есть про строки и про ввод-вывод

C++
1
2
3
4
5
6
7
#include <string>
#include <fstream>
 
std::ifstream f("file"); // открытие файла для чтения с именем "file"
std::string phrase;   // строка (контейнер)  
...
getline(f, phrase, '.'); // Чтение из файла в строку phrase до встречи символа "." или конца строки "\n" или конца файла
Добавлено через 9 минут
C++
1
if(phrase.find_first_of("0123456789") != string::npos)  //  Использование  метода строки который ищет заданные символы в строке и возращает их позицию
Devil7
0 / 0 / 0
Регистрация: 05.10.2011
Сообщений: 97
05.03.2012, 20:49  [ТС]     Обработка файловой информации #7
Спасибо вам огромное, буду пробовать щас.
retmas
Жарю без масла
803 / 685 / 143
Регистрация: 13.01.2012
Сообщений: 1,580
05.03.2012, 21:02     Обработка файловой информации #8
Цитата Сообщение от Avazart Посмотреть сообщение
getline(f, phrase, '.'); // Чтение из файла в строку phrase до встречи символа "." или конца строки "\n" или конца файла
поправочка: чтение из файла в строку phrase до встречи символа '.' или конца файла
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.03.2012, 21:36     Обработка файловой информации
Еще ссылки по теме:

Обработка символьной информации C++
C++ Обработка символьной информации
Обработка массивов информации C++

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

Или воспользуйтесь поиском по форуму:
Avazart
 Аватар для Avazart
6906 / 5146 / 253
Регистрация: 10.12.2010
Сообщений: 22,639
Записей в блоге: 17
05.03.2012, 21:36     Обработка файловой информации #9
Да именно так, плюс нюанс getline удаляет символ разделитель "." из потока, но не записывает его в строку
Yandex
Объявления
05.03.2012, 21:36     Обработка файловой информации
Ответ Создать тему
Опции темы

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