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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
MaXaS
10 / 10 / 0
Регистрация: 22.05.2011
Сообщений: 164
#1

Удаление строк в файле - C++

17.02.2012, 21:05. Просмотров 720. Ответов 3
Метки нет (Все метки)

Нужна программа, удаляющая в текстовом файле все строчки, начинающиеся на введенный символ. Хелп!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.02.2012, 21:05     Удаление строк в файле
Посмотрите здесь:

C++ удаление текста в бинарном файле
C++ Удаление записи в бинарном файле
Удаление из строк C++
C++ Поиск, сортировка и удаление строки в txt файле
Удаление из строк C++
Удаление пробелов в файле C++
C++ Массив строк в файле
C++ Поиск, замена, удаление в текстовом файле
Программа для поиска соответствие строк, учитывая регистр, в текстовом файле с 10000+ строк C++
C++ Удаление последнего символа в файле txt
Замена строк в файле C++
C++ Поиск и замена/удаление в текстовом файле

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
IFree Host
Заблокирован
17.02.2012, 21:42     Удаление строк в файле #2
Сначала напиши короткую программу для введения символа. И покажи что получилось.
retmas
Жарю без масла
859 / 741 / 164
Регистрация: 13.01.2012
Сообщений: 1,694
17.02.2012, 21:49     Удаление строк в файле #3
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
#include <iostream>
#include <fstream>
#include <string>
#include <list>
#include <iterator>
#include <algorithm>
 
class pred
{
    char ch;
public:
    pred(char c) : ch(c) { }
    
    bool
    operator()(const std::string& s) { return s[0] == ch; }
};
 
int
main()
{
    char marker;
    std::cin >> marker;
    std::list<std::string> strlist;
    std::fstream f("data.txt", std::ios::in);
    std::string line;
    while(std::getline(f, line))
        strlist.push_back(line);
    std::list<std::string>::iterator end;
    end = std::remove_if(std::begin(strlist), std::end(strlist), pred(marker));
    f.close();
    f.open("data.txt", std::ios::out);
    for(auto i = strlist.begin(); i != end; ++i)
        f << *i << std::endl;
    return 0;
}
Aranoledur
0 / 0 / 0
Регистрация: 04.03.2012
Сообщений: 16
08.10.2012, 13:05     Удаление строк в файле #4
А что если файл большой и просто так его в память не закинешь? Просто сейчас стоит такая задача.
Yandex
Объявления
08.10.2012, 13:05     Удаление строк в файле
Ответ Создать тему
Опции темы

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