Ver Mensaje Individual
  #4  
Antiguo 13-07-2008
[coso] coso is offline
Miembro Premium
 
Registrado: may 2008
Ubicación: Girona
Posts: 1.678
Reputación: 0
coso Va por buen camino
Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
var
        ls,lg : TStringList;
        i, n ,r : longint;
        nm,ns : string;
begin
        if OpenDialog1.Execute then nm := OpenDialog1.Filename else exit; // cogemos nombre a cargar
        ls := TStringList.Create;  // creamos lista
        lg := TStringList.Create;  // creamos lista
        ls.LoadFromFile(nm); // cargamos fichero
        ns := ExtractFilePath(Application.Exename) + '\' + Edit1.Text; // preparamos nombre destino
        r := ls.Count; // numero lineas de fichero
        i := 0;
        n := 0;
        while i < r do 
        if Pos('*Node',ls[i]) <> 0 then // si se encuentra '*Node' en ls[i]...
        begin
          inc(i); // para saltar la linea con el node
          inc(n); // numero archivo
          while (Pos('*Element',ls[i]) = 0) and (i < r) do // mientras no se encuentra element y no se ha llegado al final
          begin
            lg.Add(Trim(strscan(PChar(TrimLeft(ls[i])),','))); // añadimos, eliminando la primera columna
            inc(i);
          end;
          lg.SavetoFile(ns + inttostr(n) + '.txt'); // se ha encontrado element o final, grabamos
        end
        else inc(i); // si no, seguimos
        ls.Free; // liberamos
        lg.Free;
end;

es raro, el codigo anterior parecia que no tuviese ningun error. Mañana le echare un vistazo. Este funciona.

Última edición por coso fecha: 14-07-2008 a las 00:01:36.
Responder Con Cita