DParser

Program DParser;
 
uses Classes;
 
var
  InFile           : TFileStream;
  Parser           : TParser;
begin
  InFile := TFileStream.Create('parser.dat', fmOpenRead);
  if Assigned(InFile) then begin
    try
      Parser := TParser.Create(InFile);
      if Assigned(Parser) then begin
        try
          while Parser.Token <> toEOF do begin
            case Parser.Token of
              toInteger : WriteLn('Found integer: "', Parser.TokenInt, '"');
              toFloat   : WriteLn('Found float:   "', Parser.TokenFloat, '"');
              toString  : WriteLn('Found string:  "', Parser.TokenString, '"');
              toSymbol  : WriteLn('Found symbol:  "', Parser.TokenString, '"');
            else
              // Skip all other characters
              ;
            end;
            Parser.NextToken;
          end;
        finally
          WriteLn('Freeing parser object');
          Parser.Free;
        end;
      end;
    finally
      WriteLn('Freeing infile object');
      InFile.Free;
    end;
  end;
end.  $Log: dparser.pp,v $
end.  Revision 1.4  2005/02/14 17:13:18  peter
end.    * truncate log
end.
}
 

¿Has encontrado algún error? ¿Tienes la solución? Dejame tu correción ;-)

Antes de comentar: Gran parte de los ejercicios propuestos no tienen librerías debido a que Wordpress las eliminó al verlas como etiquetas HTML. Si sabes/tienes/conoces las librerías que hacen falta, déjalo en los comentarios. Y lo mas importante: Todos los ejemplos fueron realizados por personas con únicamente conocimiento básico del lenguaje, no de programación.

Otro punto importante: Si vas a sugerir un segmento de código en algún lenguaje debes hacerlo así:

  • Si es lenguaje C [c]Código en C[/c]
  • Si es lenguaje Pascal [pascal]Aquí dentro el código de Pascal[/pascal].

De esta manera el código coloreas el código.

Otro punto importante para muchos que sienten que se les ignora: Todos los comentarios los reviso y en su debido momento los apruebo, pero ojo con el con lo siguiente:

Me reservo el derecho de alterar, publicar o no los comentarios as´ como cambiar mis condiciones en el momento que así lo requiera.

¿estas de acuerdo? entonces adelante que ya te he quitado bastante tiempo leyendo esta basura de advertencias :)