Дано: файл с данными, например:
иванов иван муж. 20 программист 850.50.
Нужно взять из файла строку, а из строки слова и эти слова передать в класс(string, string, string, int, string, float).
void getAccess() {
ifstream file("./endUnemployed.txt");
while(file) {
string str;
getline(file, str);
cout << str << "\n";
}
file.close();
}
Вот на этом я застрял. Есть идеи как преобразовать string в разные типы, или лучше сделать строку char* и находить пробел как разделитель?
Первое, что приходит в голову для вашего случая:
while(file)
{
std::string str, delimiter = " ";
std::getline(file, str);
pos = str.find(delimiter);
std::string str_1 = str.substr(0, pos);
str.erase(0, pos + delimiter.length());
pos = str.find(delimiter);
std::string str_2 = str.substr(0, pos);
str.erase(0, pos + delimiter.length());
pos = str.find(delimiter);
std::string str_3 = str.substr(0, pos);
str.erase(0, pos + delimiter.length());
pos = str.find(delimiter);
int i_1 = std::stoi(str.substr(0, pos));
str.erase(0, pos + delimiter.length());
pos = str.find(delimiter);
std::string str_4 = str.substr(0, pos);
str.erase(0, pos + delimiter.length());
pos = str.find(delimiter);
float f_1 = std::stof(str.substr(0, pos));
str.erase(0, pos + delimiter.length());
}
В переменных str_1, str_2, str_3, i_1, str_4, f_1 будет содержаться все, что необходимо для передачи в класс.
После считывания строки связываешь поток ввода-вывода с stringstream. stringstream это библиотечный класс, вроде как находится в sstream.
Далее оттуда читаешь как с обычного потока. Перевод во внутреннее представление осуществляется с помощью функций sto*(), которые объявлены в заголовочнике string.
Я написал про связывание ввода-вывода потому, что не понял, принципиально ли тебе считывать построчно данные из файла. Если там куча таких строк и это не так важно, то просто помни, что считывание в строку идет либо до пробела, либо до символа конца строки/файла.
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости