https://foro.gambas-es.org/viewtopic.php?f=1&t=2374 ----------------------------------- Shell Jueves, 24 May 2012, 00:22 Contenido De Un Archivo XML.Memoria O Archivo ----------------------------------- Hola Comunidad!. Tengo el contenido de un archivo XML en una variable de cadena. ¿ Tengo siempre que volcar el contenido a un archivo o es posible usar la variable para leer su contenido ?. El método open de XMLReader parece solo entender el nombre de un archivo. Saludos. ----------------------------------- jguardon Jueves, 24 May 2012, 20:10 Re: Contenido De Un Archivo XML.Memoria O Archivo ----------------------------------- Cierto, creo recordar que tuve el mismo problema, pero también creo recordar que finalmente pude solucionarlo leyendo directamente de la variable :) Lo busco y te digo algo... Saludos ----------------------------------- santijav Martes, 29 May 2012, 23:55 Re: Contenido De Un Archivo XML.Memoria O Archivo ----------------------------------- Pues el XMLReader necesita como dato el archivo dándole en formato string la ubicación... sin eso no lo he probado... Es demasiado el grande la variable que no quieres volcarla en un archivo para ser leída posteriormente? Saludos! ----------------------------------- Shell Miercoles, 30 May 2012, 08:04 Re: Contenido De Un Archivo XML.Memoria O Archivo ----------------------------------- santijav: No es que sea grande, es por no estar creando archivos en el disco por cada consulta que haga. Una cosa es que crees un archivo y permanezca de alguna manera en el disco,diferente es la constante escritura y borrado de estos.No me parece muy lógico darle tanta paliza al disco.Cuando se podría usar una variable y grabar cuando interese. No creo que sea posible,de esa forma. ¿ Que opinas ?. Es una manera de acortar la vida al disco un poco mas.Pero si se puede evitar. Saludos. ----------------------------------- jguardon Miercoles, 30 May 2012, 18:54 Re: Contenido De Un Archivo XML.Memoria O Archivo ----------------------------------- Aquí teneis un pequeño ejemplo de cómo leer un XML que no está en un fichero, sino en una variable. De igual forma que usamos el método .FromString del XmlReader, podemos usar .ToString de la clase XmlDocument para guardarlo en memoria. Hay que tener en cuenta que esto está probado en Gambas 3 con la nueva clase gb.xml (nueva porque es un remake completo de la antigua, que ha pasado a llamarse gb.libxml). [code linenumbers=false syntax=gambas] Public Sub Button1_Click() ' Por supuesto, la variable myxmlstring puede provenir de la lectura de un recurso en la web ' El resaltado de sintaxis del foro no deja ver correctamente la etiqueta xml, que lleva interrogante después del simbolo "<" y antes de ">" Dim myxmlstring As String = "" "" " Tove" " Jani" " Reminder" " Don't forget me this weekend!" "" Dim reader As New XmlReader ' Declaramos un nuevo objeto xmlreader reader.FromString(myxmlstring) ' aquí cargamos el contenido de la variable al reader Do While reader.Eof = False 'un pequeño bucle para recorrer e imprimir los nodos reader.Read() Print reader.Node.Name, reader.Node.Value Loop End [/code] Bueno, espero que esto despeje algunas dudas, saludos ----------------------------------- Shell Miercoles, 30 May 2012, 23:12 Re: Contenido De Un Archivo XML.Memoria O Archivo ----------------------------------- Gracias Jesús. No creo que sea difícil convertir el programa que hice para gambas2.De hecho funciona perfectamente en gambas3. Ahora tengo que aprovechar el código que usaste. Estoy usando un poco mas gambas3,últimamente. :roll: Saludos.