Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 15, средняя оценка - 4.73
kotofey
0 / 0 / 1
Регистрация: 07.12.2009
Сообщений: 89
#1

Работа с файлами: получить заданную строку - C++

09.07.2010, 16:45. Просмотров 2045. Ответов 34
Метки нет (Все метки)

Даны текстовый файл, строка s. Получить все строки файла f, содержащие в качестве фрагмента строку s.
 Комментарий модератора 
Не надо злоупотреблять Caps Lock! Уважай окружающих и, возможно, к тебе отнесутся также.

http://www.cyberforum.ru/cpp-beginners/thread838037.html
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.07.2010, 16:45
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Работа с файлами: получить заданную строку (C++):

Работа с файлами. Как добавить переход на новую строку при записи?
Задача такая, дан текстовый файл (с информацией о людях Фамилия Имя Отчество) и...

Переход на заданную строку
вот хочу считать последнюю строку из файла такием раком fstream...

Прочитать из файла заданную строку
Немного запутался, если у меня есть в файле: abc def ghi Как мне засунуть в...

Удалить из матрицы заданную строку
Дана матрица размерностью МхN. Надо удалить строку K (M<=K<=N)

Разрядить пробелами заданную строку
Дана строка состоящая из элементов. Разрядить пробелами заданную строку. ...

34
[Freeman]
34 / 34 / 8
Регистрация: 07.06.2010
Сообщений: 118
12.07.2010, 21:37 #21
Да здесь, но ты все же попробуй ничего не менять а файл кинуть в папку с exe
0
kotofey
0 / 0 / 1
Регистрация: 07.12.2009
Сообщений: 89
12.07.2010, 21:39  [ТС] #22
в смысле кинуть файл который создаётся а куда и какой экзешник
0
[Freeman]
34 / 34 / 8
Регистрация: 07.06.2010
Сообщений: 118
12.07.2010, 21:48 #23
1. Скомпилируй код программы
2. После компиляции ты получишь исполняемый .exe файл (приложение)
где хранит exe файлы Turbo С я не знаю где то наверно в документаx...
3. Создай файл Text.txt и положи его в одну папку с exe
0
kotofey
0 / 0 / 1
Регистрация: 07.12.2009
Сообщений: 89
12.07.2010, 21:54  [ТС] #24
у меня папка а в этой папке лежит прога вся я компилирую её получается файл BAK потом создаю вручную text.txt как текстовый документ там же он лежит рядом но всё равно запускаю и опять ERROR
0
[Freeman]
34 / 34 / 8
Регистрация: 07.06.2010
Сообщений: 118
12.07.2010, 22:00 #25
Возьми и помести файл Text.txt прямо на диск C
и строку fin=fopen("Text.txt","r"); змени на
C
1
  fin=fopen("С:\\Text.txt","r");
0
kotofey
0 / 0 / 1
Регистрация: 07.12.2009
Сообщений: 89
12.07.2010, 22:02  [ТС] #26
неа всё равно
0
[Freeman]
34 / 34 / 8
Регистрация: 07.06.2010
Сообщений: 118
12.07.2010, 22:11 #27
Код я тебе дал рабочий а со средой(Turbo C) уже разбирайся сам
0
kotofey
0 / 0 / 1
Регистрация: 07.12.2009
Сообщений: 89
13.07.2010, 18:38  [ТС] #28
ну лан фиг знает

Добавлено через 11 часов 20 минут
а есть какой то ещё вариант
 Комментарий модератора 
Вас предупреждали по поводу злоупотребления Caps Lock. В сетевой переписке текст, набранный заглавными буквами счетается криком, а Вы всё-таки не в лесу...


Добавлено через 1 минуту
слушай а текст txt мы как пустой или туда надо набить текст в ручную???
0
Nameless One
Эксперт С++
5785 / 3434 / 351
Регистрация: 08.02.2010
Сообщений: 7,448
13.07.2010, 18:43 #29
Цитата Сообщение от kotofey Посмотреть сообщение
слушай а текст txt мы как пустой или туда надо набить текст в ручную???
Либо забить вручную, либо взять непустой файл. А откуда иначе там данные для программы появятся?
0
kotofey
0 / 0 / 1
Регистрация: 07.12.2009
Сообщений: 89
13.07.2010, 19:15  [ТС] #30
Файл вроде образуется ток пустой и всё равно уже когда гооворит enter the string пишет а потом зависает.Ты уверен что программа правильна и функционирует я чёт не уверен А в папке где лежале,экзек,файл пришлось называть Fin
0
[Freeman]
34 / 34 / 8
Регистрация: 07.06.2010
Сообщений: 118
13.07.2010, 19:34 #31
В смысле "обраузуется" у тебя напсанно: "Даны текстовый файл..." Ты должен созадть или взять файл с
текстом назвать его Text.txt и ни как подругому, иначе с чем будет программа работать в чем искать вводимую строку s?
0
kotofey
0 / 0 / 1
Регистрация: 07.12.2009
Сообщений: 89
13.07.2010, 20:02  [ТС] #32
Мне после File *fin пришлось дописать
puts("fin: \n ");
gets(buf);

Добавлено через 1 минуту
токо после этого вроде пишет на чёрном экране fin
потом enter the string пишу текст который я скопировал в текстовый файл но странно ч почему то могу токо две строки написать не больше ограниченно чтоли?

Добавлено через 18 минут
Народ помогите пожалуйста у кого какие варианты ещё написания этой программы пишите я жду заранее спасибо
0
ForEveR
В астрале
Эксперт С++
7994 / 4753 / 651
Регистрация: 24.06.2010
Сообщений: 10,547
Завершенные тесты: 3
14.07.2010, 00:45 #33
kotofey, А для чего ты пишешь весь текст? Ну если хочешь весь текст поставь тут:

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 <string.h>
int main()
{
        const int s_len=1000,buf_len=1000; /*максимальная длинна строк 100 символов*/
        char      s[s_len], buf[buf_len];
 
        FILE* fin;
    fin=fopen("Text.txt","r"); /* имя файла Text.txt */
 
        printf("Enter a string : ");
        fgets(s,s_len,stdin);
        s[strlen(s)-1]=0;
 
        while(!feof(fin))
        {
                fgets(buf,buf_len,fin);
                if( strstr(buf,s) != NULL )
                        printf("%s",buf);
        }
        fclose(fin);
                return 0;
}
То есть измени размер буфера на 1000 или более... Если уж так хочется писать весь текст а не отдельное предложение оО
0
[Freeman]
34 / 34 / 8
Регистрация: 07.06.2010
Сообщений: 118
14.07.2010, 07:04 #34
kotofey, давай обратимся к тексту задания
Даны текстовый файл, строка s. Получить все строки файла f, содержащие в качестве фрагмента строку s.
Зачем тебе когда он пишет enter string вводить весь текст ?!?!
Тебе нужно ввести тока одну строку s, и он тебе покажет все строки файла text.txt которые содержат в качестве фрагмента вводимую строку s
0
Azamat92_09
0 / 0 / 0
Регистрация: 06.04.2011
Сообщений: 7
15.04.2011, 15:56 #35
Здравстуйте!мне тоже задали такое задание,,,я нашел у вас на форуме эту прогу,большое спасибо.показал учителю ,,ему не очень понравилось,,,говорит что хочет так
,,,вот например мы водим Serik student.Kolya student.vse studenti..программа выводит то что мы ищем,,препад хочет чтоб прога еше подсчитывала сколько раз повторяется слова,,такое как в примере Student 3 раза повторяется,,Большое спасибо
0
15.04.2011, 15:56
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.04.2011, 15:56
Привет! Вот еще темы с решениями:

Взять заданную строку в кавычки вида << >>
Написать программу: Задание :взять заданную строку в кавычки вида &lt;&lt; &gt;&gt;.

Строки. Уменьшить заданную строку на К символов
Помогите пожалуйста! Нужно написать программу с функцией, уменьшающей заданную...

Заменить заданную строку матрицы а на вектор b
Дана 4х4 , вектор b размерностью 4. Заменить заданную строку матрицы а на...

Заданную строку перевести в массив из слов
Всем привет, вот дан string предложение, нужно все это перевести в массив из...


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

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

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