Ver Mensaje Individual
  #3  
Antiguo 25-11-2009
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Reputación: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
El único problema con la propuesta de coso es que, por lo menos hasta la versión 7 de Delphi, la propiedad CommaText siempre considera los espacios como delimitadores, de forma que si tu archivo tiene una linea como esta:

84,camisas limpias,340.50,sucursal oriente

te lo separará así:

84
camisas
limpias
340.5
sucursal
oriente

Una posible solución a eso, es sustituir previamente los espacios por algún caracter que no se use en el archivo, y restaurarlos una vez asignado a CommaText, por ejemplo:

Código Delphi [-]
procedure Split(S: String; Lines: TStrings);
begin
  S := StringReplace(S, ' ', '~', [rfReplaceAll]);
  Lines.CommaText := S;
  Lines.Text := StringReplace(Lines.Text, '~', ' ', [rfReplaceAll]);
end;

// Saludos
Responder Con Cita