No entiendo XML
Hola, ya leí varios post con mucha ayuda sobre XML y no entiendo.
Me siento muy estúpido, pero es así. No entiendo qué hacer para recorrer los no sé qué de los XML- Les cuento. Tengo un XML que lo paso por el XML Binding, me genera un PAS que calculo sea algo generado para trabajar directamente en ese archivo, no lo entiendo. Me leo y veo videos de trabajar en XML y no entiendo. Quizás sea ya (ES DE HECHO NO QUEDAN DUDAS) problema de mi cabeza. Pero no sé como recorrer y leer los ficheros XML, ni aún viendo que el en XMLBinding me ha hecho algo servido en bandeja, por que más o menos entiendo lo que hizo, pero no sé hacer con eso. Les dejo parte del XML que quiero leer, lo que quiero hacer es entrar en un (NODO??) llamado <game>, leer su contenido y si es necesario, agregar un (HIJO????) a ese (NODO??) Me ayuda alguien por favor?? De verdad leí un montón, vi videos DEMASIADO EXPLICATIVOS!!!, bajé ejemplos y NI ASÍ PUDE!!! PARTE DEL XML ( Son como 9000 sub items, pero con que me sepa leer 1 calculo que un for o while o o que sea me va a servir después) Código:
<?xml version="1.0" encoding="UTF-8"?> |
Realmente no tiene mucho que entender, imagina que en lugar de un .xml fuese un .ini
Cita:
|
Existe un numero realmente pequeño de conceptos universales en la programación. De esto, el creador de PASCAL determino que:
Cita:
Basicamente, hay un pequeño conjunto de "formas" generales, que a nivel abstracto son lo mismo, pero que se *implementan* de formas diversas. Pero estas formas generales (*DATOS*) se operan de forma igual con sus correspondientes (*ALGORITMOS*)! Asi que el "truco" es pensar: Que forma de datos estoy operando, asi sabre que algoritmos le aplican. ----- Estas son las siguientes. Lease "Valores de tipo ....": P.D: Coloco el valor + el Tipo/Type - Unitarios/Scalars: 1:int, true:bool, "hello":string, cliente:Object(Customer) Se podria decir que un scalar es un caso especial de las siguientes formas de grupo: - Colecciones/Listas - Collections/List: [1, 2, 3] que pueden ser representados como: Arrays, LinkedLists, Queue, InifiniteSequences, etc Esta es la forma mas familiar - Tablas/Relaciones/Relations/DataSets/Tables: Clientes:TDataSet, Ciudades:HashMap[NombreCampo:ArrayOf...], etc Estas son un poco mas complejas, son estructuras de 2 dimensiones, y son el fundamento de la bases de datos relacionales. Se podria decir que los escalares y las listas son casos especiales de las relacionales - Grafos/Arboles/Graphs/Trees: Cuentas:BTree, Genealogia:AVTree, *XML:Tree* Y por ultimo los grafos, con su mucho mas util (osea, en la practica) caso especial de los arboles <-- LEE ESTO. Un XML es de esta familia. Es simplemente una forma de *serializar* o convertir a una forma que permita ser almacenada en disco, un arbol *cualquiera*. Puedes usar un visualizador grafico, que permite darse cuenta de esto, como: https://codebeautify.org/xmlviewer XML es *complejo*. De ser posible, es mejor usar algo como Json o similar. ----- La parte importante es que cada "forma" tiene un numero finito y corto de tareas universales que se hacen con estas. Por ejemplo un lista: - Crear - Recorrer valor a valor - Ir a la posición X (que puede derivarse de la anterior!) - Determinar si es finita o infinita (mirar sus tamaño) Y ya. Puede que adicionalmente se permita modificar la lista, pero estas tres tareas son todo lo que se necesita para hacer TODAS LAS DEMAS. Igualmente, los arboles tienen un conjunto pequeño de tareas. Entre estos, el importante es: - Recorrer el arbol: https://es.wikipedia.org/wiki/Recorrido_de_%C3%A1rboles Una vez que domines como operar un arbol de forma generica, ya veras que "pasar" a XML es "pan comido", de la misma manera que si entiendes como se opera una matriz volverla un archivo plano no es nada del otro mundo. |
En mi web puedes encontrar algunas entradas donde se explica cómo acceder a archivos XML utilizando justamente el XML Mapper.
Puedes revisar los pasos para generar el fichero y luego para acceder a los datos y echarle un vistazo a los ejemplos que acompañan los artículos. http://neftali.clubdelphi.com/cargar...r-a-los-datos/ http://neftali.clubdelphi.com/testea...on-firemonkey/ |
La franja horaria es GMT +2. Ahora son las 14:14:14. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi