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

0

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

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

Name, Command, function

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

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

Теги:
config
configuration
configuration-files
obd-ii

1 ответ

2
Лучший ответ

Вы можете использовать зЬй :: 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, если вы не хотите ее реализовывать. Документы

  • 0
    Кажется, это может сработать. Я думал, что лучше всего будет использовать специальную библиотеку для чтения конфигурации, но разве это не так, когда мои данные настолько просты?

Ещё вопросы

Сообщество Overcoder
Наверх
Меню