Pascal/Turbo Pascal - Tengo una duda sobre ficheros de texto

 
Vista:

Tengo una duda sobre ficheros de texto

Publicado por charlin (1 intervención) el 03/05/2006 02:30:02
Como puedo hacer con un procedimiento o una funcion para que me detecte si una linea esta vacia me la borre o si esta llena de espacios igualmente lo haga.

Ejemplo
El otro dia sali a comprar
pipas. Pero el de la tienda
<linea en blanco>
me dijo que no tenia
<linea llena de espaciado>
que llegarian mañana.

Quedaria asi

El otro dia sali a comprar
pipas. Pero el de la tienda
me dijo que no tenia
que llegarian mañana.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Tengo una duda sobre ficheros de texto

Publicado por Carlos Guimaraenz (265 intervenciones) el 05/05/2006 19:09:16
Hola Charlin! Una idea que se me ocurre es la siguiente:

desde el código donde leemos el fichero, poner lo siguiente:

while not EOF(archivo) do
begin
Readln(archivo, linea); {linea es una variable de tipo string}
if ( Procesar(linea)) then
writeln(linea);
end;

la función PROCESAR hace lo siguiente:

function Procesar(linea : string) : boolean;
var
i : integer;
Terminar : boolean;
begin
i := 1;
Terminar:=false;
while ( i <= Length(linea) ) and not (Terminar) do
begin
if ( linea[i] <> ' ' ) then {si el caracter es diferente a blanco devuelvo true}
Terminar:=true
else
i := i + 1;
end;
Procesar:=Terminar;
end;

Si al procesar la línea encuentra sólo blancos, o si ésta está vacía, entonces devuelve falso y no lo imprime en pantalla (o bien podría ser escribir en otro fichero)... en caso de encontrar cualquier otro símbolo, devuelve verdadero e imprime la línea...
Espero que esto resuelva tu duda, cualquier cosa aquí estamos... un abrazo!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar