Вы можете прочитать свой файл и написать новый файл, исключая ненужную строку.
Для этого вы можете выполнить итерации файла и проверить каждую строку с помощью регулярного выражения.
Регулярное выражение позволяет вам указать форму, которую должен иметь ваш ввод.
Вы должны определить, какая часть вашего ввода является фиксированной, а какая - переменной, чтобы создать правильное регулярное выражение.
http://www.cplusplus.com/reference/regex/
Bye
Я положил сюда маленький код:
#include <stdio.h>
#include <iostream>
#include <regex>
#include <string>
using namespace std;
int main()
{
string inputLine="----------------------------379412310113082987734398 Content-Disposition: form-data; name=\"file\"; filename=\"2.png\" Content-Type: image/png ";
regex regularExpression("[-]+[0-9]+ Content-Disposition: form-data; name=\".+\"; filename=\".+\" Content-Type: .+ ");
if(regex_match(inputLine,regularExpression))
cout<<"REGEX OK"<<endl;
else
cout<<"REGEX FAIL"<<endl;
}
inputLine - это ваша строка.
Регулярное выражение - это способ указать формат вашего ввода.
это
"[-]+[0-9]+ Content-Disposition: form-data; name=\".+\"; filename=\".+\" Content-Type: .+ "
означает, что ваш ввод состоит из:
- 1 или более "-" каракры [-] +
- 1 или более чисел [0-9] +
- фиксированная строка
<< Content-Disposition: форма-данные; имя = \ "+ \."; filename = \ ". + \" Content-Type:. + >>, в котором содержимое name = "" и filename = \ ". + \" может быть любым, а Content-Type может быть любым.
Обратите внимание на пробелы в начале и конце строки.
Обратите внимание, что я предположил, что переменные части:
- число "-"
- количество цифр
- имя
- имя файла
- Content-Type
если формат ввода отличается, вам нужно изменить регулярное выражение.