Ver Mensaje Individual
  #14  
Antiguo 18-01-2013
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Reputación: 29
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
Hola Alfredo, que gusto verte (ahora a distancia).

Sí te sirve, pero no como data set. Es decir, no puedes simplemente asignarla a un TDataSource, ya que TghXMLDoc es para leer y escribir cualquier archivo XML, pero "a patín" (aunque no estaría mal añadirle algunos métodos para pasar en automático información a un TDataSet).

Sería bueno, si gustas, que adjuntaras aquí uno de los archivos que deseas leer (si es información sensible la puedes alterar) y me dices cuáles son los datos a extraer, para ponerte un ejemplo de cómo sería usando esta clase.

Abrir el archivo no tiene ciencia, pero para ubicar la información a leer cuenta con varios métodos que soportan expresiones XPath (FindNode, FindNodes, LocateNode, Node y Nodes).

Código Delphi [-]
Var
  Doc :TghXMLDoc;
Begin
  Doc := TghXMLDoc.Create ('C:\AGAG4\Docs\ReporteSemanal.xml');
  // Al constructor también se le puede dar el texto XML directamente
  
  Try
    // Aquí leer o modificar el contenido del documento (objeto Doc)

    Doc.Save;  // Guardar los cambios en el mismo archivo
    // O bien, guardar el documento con otro nombre:
    Doc.Save ('C:\AGAG4\Docs\ReporteModificado.xml');
  Finally
    Doc.Free;
  End;

Esta clase emplea una de las APIs de Windows, llamada MSXML. Con la clase intento que el trabajo del programador resulte más sencillo.

Ya sabes, si gustas pon por aquí una copia del documento o algo que se le parezca y con gusto hacemos el ejercicio de cómo leer el contenido.

Saludos.

Al.

P.D. El siguiente zarandeado lo invitaré yo.
Responder Con Cita