Paso 7: Leer XML con boost::property_tree...
Hay muchas bibliotecas que pueden utilizar para leer archivos XML. La mayoría de ellos es pesados y complejos. Boost property_tree sin embargo es muy fácil de usar y consta de una única implementación de archivo de encabezado.
Los archivos de datos registrador de TC son en un XML (XML-como) formato. (Vea los archivos de ejemplo incluidos con el código en github, así como la imagen adjunta a este paso).
Para utilizar boost::property_tree para leer XML archivos de inicio mediante la inclusión de los siguientes archivos de encabezado:
Para abrir un archivo XML y leer los datos, se necesitan sólo unas pocas líneas más como se muestra en el siguiente código de ExcelAutomation.cpp:
Eso es fácil! Ahora a leer las entradas de la property_tree es tan fácil. En el ejemplo siguiente se leerá un valor doble:
Si no se encuentra la entrada, se devolverá el valor predeterminado de 0.0. En nuestro caso ExitDiameter se lee desde el archivo MTD1 que tiene este aspecto:
Cuerdas se pueden leer desde el archivo XML con código como este:
Tenga en cuenta que la documentación de boost proporciona detalles sobre cómo usar property_tree. Por ejemplo, si los valores predeterminados no son siempre se produce una excepción si la entrada no existe.
Para más ejemplos, ver el resto de ExcelAutomation.cpp de la base del código TCLogger2Excel, o visite la Página de documentación de boost.