Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 26-06-2008
Paulao Paulao is offline
Miembro
 
Registrado: sep 2003
Ubicación: Rua D 31 Casa 1 - Inhoaíba - Rio de Janeiro - RJ - Brasil
Posts: 637
Poder: 21
Paulao Va por buen camino
Duda con StringList

Señores, tengo una dificuldad de trabajar con archivos text y Stringlist. O que pasa es:
Hago loop para llenar una Stringlist. Quando esta estas llena, yo ahora hago un Writeln para
descargar en Archivo Text. Bien, esto no es problema, o descargar, pero quando hago asi, los
datos que viene de la Stringlist, generan una linea vacia. Este es mi archivo hoy.

Cita:
10
15
20

35
40
55
6061322970006309112562515115004176005246
6500100184407040198GG T4MALHA ABERTA C/ZIPER R/20400100000009900
7000000000000000000000000000000000000000000009900
75CARTAO 99,00

801800

6061322970006309112562515115004177005247
6500100183936010189G T4MALHA LISA FINA GOLA V R/200100000004500
7000000000000000000000000000000000000000000004500
75A VISTA 45,00

801800

6061322970006309112562515115004178005248
6500100084328030037G T4JAQUETA KANVAS G.POLO C/ZI00100000010800
7000000000000000000000000000000000000000000010800
75A VISTA 108,00

801800
Mi gustaria que quedase asi:

Cita:
6061322970006309112562515115004176005246
6500100184407040198GG T4MALHA ABERTA C/ZIPER R/20400100000009900
7000000000000000000000000000000000000000000009900
75CARTAO 99,00
801800
6061322970006309112562515115004177005247
6500100183936010189G T4MALHA LISA FINA GOLA V R/200100000004500
7000000000000000000000000000000000000000000004500
75A VISTA 45,00
801800
6061322970006309112562515115004178005248
6500100084328030037G T4JAQUETA KANVAS G.POLO C/ZI00100000010800
7000000000000000000000000000000000000000000010800
75A VISTA 108,00
801800
Responder Con Cita
  #2  
Antiguo 26-06-2008
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Puedes poner un Edit y cargar cada línea en el edit justo antes de escribir en el fichero de Texto, así te permitirá ver lo que contiene cada línea, pues puede ser que contenga líneas vacías y de ahí te venga el error.

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #3  
Antiguo 26-06-2008
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Poder: 22
Caro Va por buen camino
Hola Paulao, seguramente algunas posiones de tu StringList se deben estar llenando con vacios, lo que puedes hacer antes de pasar lo que tienes en tu StringList es eliminar esos vacios.

Código Delphi [-]
 for i:=StringList.Count-1 downto 0 do
  if StringList[i]='' then
   StringList.Delete(i);

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
Responder Con Cita
  #4  
Antiguo 26-06-2008
[maeyanes] maeyanes is offline
Capo de los Capos
 
Registrado: may 2003
Ubicación: Campeche, México
Posts: 2.732
Poder: 23
maeyanes Va por buen camino
Hola...

Tu problema viene desde el uso del WriteLn cuando estás escribiendo en el archivo de texto, ya que este procedimiento inserta un Salto de Linea/Retorno de Carro al final de cada línea, así que al final, siempre obtienes una línea en blanco...

Si ya estás usando el TStringList, para guardarlo en un archivo de texto solo tienes que hacer:

Código Delphi [-]
StrinList.SaveToFile('NombreDeArchivo.txt')


Saludos...
Responder Con Cita
  #5  
Antiguo 26-06-2008
[coso] coso is offline
Miembro Premium
 
Registrado: may 2008
Ubicación: Girona
Posts: 1.678
Poder: 0
coso Va por buen camino
Hola,

ten en cuenta que si una cadena de las del TStringList acaba en char(#13) entonces con el writeln estaras escribiendo 2 saltos de linea.
Responder Con Cita
  #6  
Antiguo 26-06-2008
Avatar de seoane
[seoane] seoane is offline
Miembro Premium
 
Registrado: feb 2004
Ubicación: A Coruña, España
Posts: 3.717
Poder: 24
seoane Va por buen camino
Entiendo que quieres guardar varios TStringList en el mismo archivo de texto así que queda descartado el uso de SaveToFile, para eso tenemos SaveToStream.

Por ejemplo:
Código Delphi [-]
var
  Stream: TFileStream;
begin
  Stream:= TFileStream.Create('C:\1.txt',fmCreate);
  try
    Lista1.SaveToStream(Stream);
    Lista2.SaveToStream(Stream);
    Lista2.SaveToStream(Stream);
      ... etc ...
  finally
    Stream.Free;
  end;
end;

... o tambien puedes usar Write en vez de Writeln
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Gran lío con el stringlist y el TstringList sac OOP 13 23-04-2008 06:25:06
Query vs. StringList MaMu Conexión con bases de datos 11 13-03-2008 03:30:53
Problema con StringList MaMu Varios 2 26-05-2007 22:40:45
Recorrer un StringList bustio Varios 2 27-02-2005 20:50:21
Limite del StringList victork_py Varios 8 11-05-2004 23:19:11


La franja horaria es GMT +2. Ahora son las 00:32:03.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi