Как убрать символы / целые числа из входного текста из файла?

Мне удалось написать некоторый код, который может читать из файла .txt, однако я хочу, чтобы моя программа считывала только важные данные.

Например, если мой текстовый файл имел следующие данные:

Name= Samuel
Favourite colour= Green
Age= 24
Gender= Male

Я хочу, чтобы моя программа просто читала и игнорировала все до «=»

Samuel
Green
24
Male

Я посмотрел в .substr() метод, однако, вам нужно знать точное положение = знак.

Это мой код, и он не работает

while ( getline (open_file,line) ){
for (int i=0; i<line.length(); i++){
if (line == "="){
cout << " " + (rest of the line;
}

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

-1

Решение

Наиболее эффективный способ чтения в файлах данных — это одновременное чтение строки в строковую переменную. Затем извлеките важные части.

Ваш файл данных выглядит так, как будто он имеет формат:

<name> = <value>

Я предлагаю вам извлечь оба название а также значение в виде строк (например, подстрок) вы можете передавать исходные данные в их первоначальном виде другим функциям. Пусть другие функции беспокоятся о преобразовании в целые числа или другие типы данных.

название поле можно найти, выполнив поиск «=» и запомнив положение «=». Затем используйте метод подстроки и извлеките начало строки в позицию перед ‘=’.

Значение — это подстрока, которая начинается после позиции ‘=’ до конца строки.

Я дам вам посмотреть функции std :: string и узнать, как их использовать. Я не хочу давать вам код, потому что вы не будете учиться так много (например, как искать функции).

Смотрите также std::getline,

0

Другие решения