Разбор файла очень простой конфигурации

Я пишу библиотеку / приложение для чтения OBDII на C ++. Данные извлекаются из компьютера автомобиля путем отправки простой строковой команды, а затем передачи результата через функцию, специфичную для каждого параметра.

Я хотел бы прочитать конфигурационный файл всех команд, которые я хочу, что-то вроде этого:

Name, Command, function

Engine RPM, 010C, ((256*A)+B)/4
Speed, 010D, A

По сути, все очень просто, все данные нужно просто считать в виде строки. Кто-нибудь может порекомендовать хорошую простую библиотеку для этого? Моя цель — g ++ и / или Clang в Linux, если это имеет значение.

0

Решение

Вы могли бы использовать станд :: ifstream читать построчно, а также повышение :: раскол разделить линию на ,,

Образец кода:

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

#include <fstream>
#include <vector>
#include <boost/algorithm/string/split.hpp>
#include <boost/algorithm/string/classification.hpp>

int main(int argc, char* argv[]) {
std::ifstream ifs("e:\\save.txt");

std::string line;
std::vector<std::string> tokens;
while (std::getline(ifs, line)) {
boost::split(tokens, line, boost::is_any_of(","));
if (line.empty())
continue;

for (const auto& t : tokens) {
std::cout << t << std::endl;
}
}

return 0;
}

Вы также можете использовать Библиотека String Toolkit если вы не хотите реализованы. Документы

2

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


По вопросам рекламы [email protected]