Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.63/8: Рейтинг темы: голосов - 8, средняя оценка - 4.63
0 / 0 / 0
Регистрация: 05.02.2016
Сообщений: 66
1

Замена символа в файле

13.06.2016, 23:21. Просмотров 1568. Ответов 3
Метки нет (Все метки)

Есть текстовый файл. Необходимо считать и заменить все пробелы на * и записать это в другой файл. Как реализовать замену?
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.06.2016, 23:21
Ответы с готовыми решениями:

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

Замена символа в строке на число соответствующему номеру по порядку вхождения этого символа в строку
В заданной строке заменить каждый символ «*» числом, соответствующим номеру по порядку вхождения...

замена символа
Собственно учу си по манам из инетов, есть вот такой пример #include <stdio.h> void...

Замена символа
Здравствуйте!!! помогите решить задачку! Дано строка символов оттуда надо убрать букву "А" и вместо...

3
151 / 142 / 96
Регистрация: 15.03.2014
Сообщений: 297
14.06.2016, 01:41 2
Лучший ответ Сообщение было отмечено 9398 как решение

Решение

Как вариант с помощью std::replace.
C++
1
2
3
4
5
6
7
8
9
10
11
#include <iostream>
#include <algorithm>
 
int main() {
 
    std::string str = "e x a m p l e string ";
    std::replace( str.begin(), str.end(), ' ', '*' );
    std::cout << str << std::endl;
 
    return 0;
}
2
159 / 151 / 92
Регистрация: 18.11.2015
Сообщений: 677
14.06.2016, 02:42 3
Да, algorithm спасает

На
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#include <vector>
#include <string>
#include <fstream>
#include <algorithm>
#include <Windows.h>
 
void main() 
{
 
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
 
    std::fstream fileStream;
 
    /*--------------------------------------------------------------*/
 
    fileStream.open("test.txt", std::ios::in);
 
    if (!fileStream) { /* ошибка */ }
 
    std::vector<std::string> text;
    std::string line;
 
    while (std::getline(fileStream, line))
        text.push_back(line);
 
    fileStream.close();
 
    /*--------------------------------------------------------------*/
 
    for (auto it = text.begin(); it != text.end(); it++)
        std::replace(it->begin(), it->end(), ' ', '*');
 
    /*--------------------------------------------------------------*/
 
    fileStream.open("test.txt", std::ios::trunc | std::ios::out);
 
    if (!fileStream) { /* ошибка */ }
 
    for (auto it = text.begin(); it != text.end(); it++)
        fileStream << (*it) << std::endl;
 
    fileStream.close();
 
    /*--------------------------------------------------------------*/
 
 
}
1
Падаван С++
442 / 256 / 88
Регистрация: 11.11.2014
Сообщений: 897
14.06.2016, 02:55 4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
#include <regex>
 
int main(int argc, char* argv[]) {
    std::ios::sync_with_stdio(false);
 
    std::string input("H e l l o");
    std::regex spaces("[[:space:]]+");
 
    input = std::regex_replace(input, spaces, "*");
    std::cout << input << std::endl;
 
    std::cin.ignore();
    return 0;
}
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.06.2016, 02:55

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

замена символа
Здрасти. почиму не работает такой вариант? char* b=&quot;123456&quot;; *(b+2)='*'; что нужно...

Замена символа w на пробел
стоит задача: Дана строка из 20 символов (то ли заданых константой толи вводимых с клавы - не...

Замена символа на строку.
Задача заключается в следующем: необходимо заменить &quot;ХХХ&quot;, независимо от колличества Х-ов, на...

Замена 1 символа на несколько
Доброго времени суток. Помогите доделать задачу. Задача: Преобразовать строку, содержащую...


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

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

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