elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Tutorial básico de Quickjs


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Leer fichero XML desde C++
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Leer fichero XML desde C++  (Leído 2,440 veces)
statham

Desconectado Desconectado

Mensajes: 19



Ver Perfil
Leer fichero XML desde C++
« en: 30 Enero 2019, 11:37 am »

Buenas a todos, recurro a este foro ya que llevo unos dias en los cuales no consigo leer un archivo xml desde un proyecto c++.

He intentado con MSXML pero el me coge bien el archivo **msxmlX.dll** (o quiero pensar eso), tambien he probado con TinyXML y nada.

Con Poco y pugiXML no encuentro mucha documentacion...

Estoy ahora con QtXML, que parece sencillo pero no usa Visual Studio.

Es basicamente leer un fichero xml y guardar variables.

Sabeis de algun videotutorial o web sencilla de seguir??

Un saludo.


En línea

MAFUS


Desconectado Desconectado

Mensajes: 1.603



Ver Perfil
Re: Leer fichero XML desde C++
« Respuesta #1 en: 30 Enero 2019, 17:27 pm »

Siempre te puedes hacer tú mismo el algoritmo:
Un XML no es más que un árbol donde cada nodo tiene:
- Datos en formato de texto
- un número indeterminado de otros elementos
- un número indeterminado de propiedades

Haces un parser que lea el XML y sepa cuándo se define una etiqueta, cuando trata con una propiedad, cuando son los datos, que descubra cuando se cierra una etiqueta y lleve un control de si se abren etiquetas y se cierran en el momento adecuado. Al tiempo que te vaya construyendo el árbol con lo que va encontrando.

Sí ha llegado al final del fichero tendrás el árbol creado con todo el XML, si falla destruyes el árbol que llevas hecho eninformas de dónde está el error.


En línea

statham

Desconectado Desconectado

Mensajes: 19



Ver Perfil
Re: Leer fichero XML desde C++
« Respuesta #2 en: 31 Enero 2019, 10:41 am »

Claro al pincipio leia el fichero y cada vez que detectava una variable global T que era <Test> pues identificaba el primer test, y asi con todas las etiquetas.
Pero queda muy feo, y debo usar una libreria que parsee xml detectando automaticamente la etiquetas, ya que este trabajo tengo q entregarlo y exponerlo

estoy intentandolo con tinyxml2 que es lo mas sencillo que he visto

Para leer algo asi, y guardar cada dato en una variable

<Tests>
   <Test id="test0">
      <Inputs>
         <Input port="A" value="1" />
         <Input port="B" value="4.56" />
         <Input port="C" value="7" />      
      </Inputs>
      <Outputs>
         <Output port="D" value="10" />      
      </Outputs>
   </Test>
« Última modificación: 31 Enero 2019, 11:01 am por statham » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Guarda basura al leer string desde un fichero.[RESUELTO]
Programación C/C++
utz 5 4,617 Último mensaje 14 Mayo 2012, 03:36 am
por durasno
Leer datos de un cierto formato desde un fichero
Programación C/C++
javiepe 9 3,626 Último mensaje 13 Marzo 2014, 18:58 pm
por Yoel Alejandro
En C: Problema al leer String e int desde fichero
Programación C/C++
vivianiita13 0 1,472 Último mensaje 27 Abril 2015, 14:07 pm
por vivianiita13
Leer datos desde fichero .txt
Programación C/C++
alc 0 2,278 Último mensaje 29 Enero 2018, 08:54 am
por alc
Map: grabar en fichero // Map: leer desde fichero.
Programación C/C++
gastongaston 0 1,460 Último mensaje 30 Septiembre 2018, 16:03 pm
por gastongaston
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines