Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
20 / 20 / 11
Регистрация: 12.07.2015
Сообщений: 350
1

Замена слов в файле звездочками

03.10.2015, 11:27. Показов 1439. Ответов 6
Метки нет (Все метки)

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

Когда-то (помню с умиленьем)
Я смел вас няньчить с восхищеньем,
Вы были дивное дитя.
Вы расцвели - с благоговеньем
Вам ныне поклоняюсь я.
За вами сердцем и глазами
С невольным трепетом ношусь
И вашей славою и вами,
Как нянька старая, горжусь.

Вот код того, как я вывожу на экран этот текст
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
#include <fstream>
 
using namespace std;
 
int main()
{
    setlocale (LC_ALL, "rus");
 
    char buff[] = "C:\\TXT.txt";
    unsigned char ch;
    ifstream fin(buff, std::ios::in);
 
    while(fin)
    {
        ch = fin.get();
        cout << ch;
    }
    fin.close();
    
    return 0;
}
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.10.2015, 11:27
Ответы с готовыми решениями:

Замена слов в файле
Помогите плиз.Как реализовать данную программу?: В первом файле находиться текст.Второй файл...

Замена слов в файле
Помогите, пожалуйста, исправить код. Нужно : 1. Чтобы замена производилась независимо от...

Поиск и замена слов в файле
В общем есть файл1, в нем записаны слова через пробел в 1 строку, нужно чтоб из этого файла бралось...

Замена слов в текстовом файле
Нужна помощь, как в текстовом файле изменить слово, например, &quot;Black&quot; на &quot;White&quot;?

6
16 / 14 / 12
Регистрация: 02.10.2015
Сообщений: 43
03.10.2015, 12:47 2
Лучший ответ Сообщение было отмечено Nik- как решение

Решение

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
26
27
28
29
30
31
32
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
 
int main()
{
    setlocale(0, "Russian");
 
    ifstream readFile("txt.txt");
    if (!readFile.is_open())
        cerr << "Ошибка!\n";
 
    string line;
    while (getline(readFile, line))
    {
        size_t backWord{line.size() - 1};
        while (!isalpha(unsigned char(line[backWord])))
            --backWord;
 
        size_t beginWord{ backWord };
        while(isalpha(unsigned char(line[beginWord])))
            --beginWord;
 
        line.replace(beginWord + 1, backWord - beginWord, "*");
 
        cout << line << endl;
    }
 
    system("pause");
    return 0;
}
1
20 / 20 / 11
Регистрация: 12.07.2015
Сообщений: 350
03.10.2015, 14:29  [ТС] 3
Все работает , спасибо !

Добавлено через 8 минут
А можете помочь с определением строк кода, а то я могу в некотором ошибаться ?
0
16 / 14 / 12
Регистрация: 02.10.2015
Сообщений: 43
03.10.2015, 17:16 4
в смысле объяснить что где происходит?
0
20 / 20 / 11
Регистрация: 12.07.2015
Сообщений: 350
03.10.2015, 17:44  [ТС] 5
Да. И еще вопрос. Что нужно изменять в самом коде, что бы звездочкой заменялись и другие слова?
0
16 / 14 / 12
Регистрация: 02.10.2015
Сообщений: 43
07.10.2015, 20:46 6
Считываем по одной строке.
Определяем индекс самой правой буквы в этой строке (backWord).
Определяем индекс ближайшей от неё слева не буквы (beginWord).
Заменяем с позиции beginWord + 1, (backWord-beginWord) символов на нужные.
C++
1
line.replace(beginWord + 1, backWord - beginWord, "*");
типы size_t у beginWord и backWord замени лучше на int
0
20 / 20 / 11
Регистрация: 12.07.2015
Сообщений: 350
07.10.2015, 21:05  [ТС] 7
Спасибо, но я уже немного продвинулся в этом деле и возникают новые проблемы, а закрытие слов реализовано нахождением пробелов и пунктуации.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.10.2015, 21:05

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

Замена слов разной длины в файле
Здравствуйте, вопрос собственно в заголовке темы.Т.е. есть слово например Земля мы хотим заменить...

Поиск и замена слов в файле txt
Как заменить и найти слова в файле txt на С++. То есть есть файл вот такой структуры AAA БББ...

Замена символов вводимого пароля звездочками
Вот исходный код программы.Мне нужно чтобы когда пользователь вводил пароль эта строка визуально...


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

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

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