Как удалить из txt-файла все строки, начинающиеся с цифры "3"?
Как удалить из txt-файла все строки, начинающиеся с цифры "3"?
Удаление всех строк, содержащие символ 3 не пойдёт, надо именно удалить строки, которые начинаются с цифры 3. Заранее благодарен
По дате
По рейтингу
#include <vector>
#include <fstream>
#include <sstream>
using namespace std;
int main()
{
setlocale(0, "");
ifstream inp("N:/text.txt");
string str;
vector<string>file;
while (getline(inp, str))
{
if (str[0] != '3') file.push_back(str);
}
ofstream out("N:/out.txt");
for (auto i = file.begin(); i != file.end();i++) out << (i!=--file.end()?*i+'\n' : *i);
}
Открыть нужный файл, создать рядом новый файл с временным именем, читать первый файл и записывать во второй, игнорировать строчку если первый символ '3'.
Потом удалить старый файл и переименовать новый.
Больше по теме