Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
vaselo
19 / 19 / 5
Регистрация: 17.10.2010
Сообщений: 247
#1

В текстовом файле заменить точку на запятую, а запятую на многоточие

07.11.2010, 11:56. Просмотров 853. Ответов 3
Метки нет (Все метки)

Доброго времени суток! есть задание: в текстовом файле заменить точку на запятую, а запятую на ...(три точки) как открыть файл знаю, а вот просканировав его на наличие точек-запятых, как заменить? если заменить 1 знак на 3, то надо же подвигать текст вправо, иначе точки затрут буквы. помогите пжалста?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.11.2010, 11:56
Ответы с готовыми решениями:

В введенной строке заменить каждую запятую и точку на точку с запятой
В введенной строке заменить каждую запятую и точку на точку с запятой и вывести...

Что, если заменить точку на запятую в типе double
#include <iostream> using namespace std; int main() { int x=1;...

Как поменять точку на запятую в Visual C++ 6?
У меня в разделе Язык и региональные стандарты выставлена запятая(Делитель...

Как сделать так, чтобы воспринимало и точку и запятую
Как можно сделать функцию, чтобы для чисел с плавающей точкой я могла ввести и...

Заменить в char строке запятую, выдает ошибку
int main(int argc, char *argv) { char* start = "Test,,,,,"; for (int...

3
accept
4833 / 3255 / 454
Регистрация: 10.12.2008
Сообщений: 10,569
07.11.2010, 14:09 #2
пишешь новый файл, есть ещё tmpfile(), но данные могут потеряться в процессе работы программы (когда будешь из tmp писать обратно)
поэтому пишешь новый файл, потом к старому применяешь remove(), а к новому применяешь rename()
1
vaselo
19 / 19 / 5
Регистрация: 17.10.2010
Сообщений: 247
07.11.2010, 20:29  [ТС] #3
тоесть, надо скопировать все до искомого знака в новый документ, выполнить вставку знаков(...) и продолжить строку текстом? каким образом можно писать сразу в файл, минуя массив строк? покажите плиз пример, как это можно сделать?
0
accept
4833 / 3255 / 454
Регистрация: 10.12.2008
Сообщений: 10,569
08.11.2010, 00:37 #4
Цитата Сообщение от vaselo
выполнить вставку знаков(...) и продолжить строку текстом?
да

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
    int c, retval;
 
    while ((c = getc(ifp)) != EOF) {
        if (c == '.')
            retval = putc(',', ofp);
        else if (c == ',')
            retval = fputs("...", ofp);
        else
            retval = putc(c, ofp);
        if (retval == EOF)
            break;
    }
 
    if (c != EOF && retval == EOF)
        fprintf(stderr, "error: can't write to the output file" "\n");
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.11.2010, 00:37

В строке заменить пробел между слов на запятую и пробел
В строке заменить пробел между слов на запятую и пробел

Каждую цифру текста, которая находится перед первым символом "+", заменить на запятую
Всем доброго вечера, если Вам не сложно, помогите с задачей. Решить желательно,...

Каждую цифру текста, которая находится перед первым символом "+", заменить на запятую
Дано текст. Если он не содержит символа "+", то оставить его без изменения. В...


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

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

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