Cita:
Empezado por JuanBCT
Mi pregunta es: como hago para expresar "de la posición 48 a la 73 es el campo descripción, haya espacios o no"?
|
Pero en tu caso no se trata de archivos donde los valores estén separados por un delimitador sino que se trata de campos de ancho fijo. En este caso puedes extraer cada campo con la función Copy.
Código Delphi
[-]
var
Linea: String;
I: Integer;
begin
for I := 0 to ArchivoCsv.Count - 1 do
begin
Linea := ArchivoCsv[i];
...
Campo := Copy(Linea, 48, 73 - 48);
...
end;
Es decir, lo que tú conoces es la posición en que inicia cada campo (offset) y su longitud. Copy(Linea, Offset, Longitud) devuelve la parte de Linea que comienza en el caracter Offset y tiene longitud Longitud.
// Saludos