PDA

Ver la Versión Completa : Crear archivo .txt


rcor
03-11-2006, 00:52:47
Hola a todos

Alguien que me pueda enviar un sample para generar un archivo .txt con coordenadas.

Ejemplo:

En la posicion 1 lleva una tremenda X en la posicion 5 un 2 en la posicion 10 a la 20 un mensaje y asi sucesivamente el archivo quedaria:

X 2 ESTA ES UNA


Saludos
rcor

dec
03-11-2006, 00:59:39
Hola,


var
ts: TStrings;
begin
ts := TStringList.Create;
try
ts.Add('X 2 ESTA ES UNA');
{...}
ts.SaveToFile('C:\coordenadas.txt');
finally
ts.Free;
end;
end;

seoane
03-11-2006, 00:59:44
Hola rcor, antes de nada si vas a utilizar mas de un espacio en blanco en tus mensajes deberías de usar las etiquetas o de lo contrario desaparecerán, fíjate en la diferencia:

X 2 ESTA ES UNA

En cuanto a lo que tu pregunta, puedes decir en que parte tienes problemas. ¿No sabes crear archivos de texto?¿No sabes crear una cadena con esas características?¿como lo estas intentando hasta ahora?

rcor
03-11-2006, 05:41:51
Gracias a los que respondieron

Si se crearlos pero no se acomodarlos en sus cordenadas de ahi mi pregunta sobre como crear un archivo con posiciones fijas.

Ya que la X va en la posicion 1 y el 2 va en la posicion 5 y la descripcion va en la posicion 10 hasta la 20

Yo vengo de clipper y desde un archivo .dbf se podia enviar el archivo directo a SDF y colorin colorado ya estaba tu formato en archivo texto.

El ejemplo que ponen arriba es lo que ya sabia hacer ahora solo que me digan como indicarle a delphi que el 2 me lo ponga en la posicion 5.

Gracias
rcor

seoane
03-11-2006, 11:57:09
Siguiendo con el ejemplo de dec, solo tenemos que darle formato a la cadena:


var
ts: TStrings;
Str1, Str2, Str3: string;
begin
ts := TStringList.Create;
try
Str1:= 'X';
Str2:= '2';
Str3:= 'ESTA ES UNA';
ts.Add(Format('%-5.5s%-5.5s%s',[Str1,Str2,Str3]));
ts.SaveToFile('d:\coordenadas.txt');
finally
ts.Free;
end;
end;


La parte interesante del código anterior es la cadena '%-5.5s%-5.5s%s' que le indica a la función format como debe realizar el formato. Esta dividida en 3 partes cada parte empieza por '%' y termina por 's' indicando que la variable es una string. Entre ambos se indica como se debe formatear esa cadena, el símbolo '-' indica que el texto se debe justificar a la izquierda, el primer '5' indica el tamaño mínimo de la cadena (rellenando con espacios en blanco si es necesario) y el segundo el tamaño máximo (recortando si es necesario). Puedes modificar estos valores para obtener el resultado deseado. Y ya me dejo de tanto rollo que en la ayuda explican mejor que yo como va esta función :D

Espero que te sirva.

rcor
03-11-2006, 15:04:16
Muchas gracias por las respuestas lo probare y despues pondre mas dudas o las gracias definitivas.

Saludos y lo mejor
rcor