Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 20-10-2006
Carlos Arevalo Carlos Arevalo is offline
Miembro
 
Registrado: may 2003
Ubicación: Caracas, Venezuela
Posts: 111
Poder: 21
Carlos Arevalo Va por buen camino
capturar comandos de salto de carro

Estoy tratando de capturar una cadena de caracteres desde una variable tipo string pero con los comandos de salto de carro.

Ejemplo:
Cuando pongo un break en la line de codigo donde cargo el string para ver que es lo que trae se muestra de esta manera STR=#$D#$A'n1'#$D#$A pero cuando lo paso al tedit me muestra n1 y hace el salto de carro.

Ahora hay manera de capturar toda la cadena incluyendo los comandos de salto de carro para que en el tedit me muestre '#$D#$An1#$D#$A'.

Gracias.
__________________
Carlos Arevalo
MSN Messenger: carlos@arevalo.com.ve
Responder Con Cita
  #2  
Antiguo 20-10-2006
Avatar de Enan0
Enan0 Enan0 is offline
Miembro
 
Registrado: may 2004
Ubicación: Argentina
Posts: 565
Poder: 20
Enan0 Va por buen camino
Hola ese codigo corresponde al #13#10 Salto y retorno. lo que podrias hacer es..
Buscar en el string si vienen dichos caracteres y remplazarlos por el string '#$D#$A'
No se si es la major solucion, pero te funcionaria.
y para quitarlos solamente con hacer un TRIM de la cadena Estarias quitandolos.

Creo que seria mejor un TrimLeft y luego un TRImRigth o a la inversa

saludos
Responder Con Cita
  #3  
Antiguo 21-10-2006
Carlos Arevalo Carlos Arevalo is offline
Miembro
 
Registrado: may 2003
Ubicación: Caracas, Venezuela
Posts: 111
Poder: 21
Carlos Arevalo Va por buen camino
Si tienes razon pero yo lo que quiero es capturar toda la cadena incluyendo los comandos de salto de carro para que en el tedit me muestre '#$D#$An1#$D#$A' y no esto 'n1'.
__________________
Carlos Arevalo
MSN Messenger: carlos@arevalo.com.ve
Responder Con Cita
  #4  
Antiguo 21-10-2006
Avatar de Enan0
Enan0 Enan0 is offline
Miembro
 
Registrado: may 2004
Ubicación: Argentina
Posts: 565
Poder: 20
Enan0 Va por buen camino
Bueno solo era usar un poco la inmaginacion pero aca esta el codigo.
no se si es el mejor pero que funciona Funciona,
Igualmente podes hacerle cualquier modificacion.

solo puse dos MEMOS.. MEmo1 y memo2 y un boton.
en el evento onClick va esto...

Código Delphi [-]
Const
   enter='#$D#$A';
var s,aux:string;
   I,x:integer;
begin
i:=0;
x:=0;
s:='';
aux:=Memo1.Text;
x:=pos(#13#10,aux);
while (x>0) and (I<>x) do begin
   i:=x;
   if x=1 then begin
      s:=enter;
      delete(aux,1,Length(#13#10));
   end else begin
      s:=s+copy(aux,1,x-1)+enter;
      delete(aux,1,x+Length(#13#10)-1);
   end;
   x:=pos(#13#10,aux);
end;
Memo2.Lines.Add(s);
end;


Editado unos minutos despues

Jejeje Bueno no anda Perfecto Dado un Caso, (entre el que se me ocurre) te puede llegar a cortar la cadena. asique eso te lo dejo para vos. como comentario para hacertelo mas facil, es una de las comparaciones.



Bue eran mas de uno y no pude con mi genioo aca esta el codigo bien

Código Delphi [-]
Const
   enter='#$D#$A';
var s,aux:string;
   I,x:integer;
begin
i:=0;
x:=0;
s:='';
aux:=Memo1.Text;
x:=pos(#13#10,aux);
while (x>0)  do begin
   i:=x;
   if x=1 then begin
      s:=s+enter;
      delete(aux,1,Length(#13#10));
   end else begin
      s:=s+copy(aux,1,x-1)+enter;
      delete(aux,1,x+Length(#13#10)-1);
   end;
   x:=pos(#13#10,aux);
end;
s:=s+aux;
Memo2.Lines.Add(s);
end;

Última edición por Enan0 fecha: 21-10-2006 a las 01:44:56.
Responder Con Cita
  #5  
Antiguo 21-10-2006
Carlos Arevalo Carlos Arevalo is offline
Miembro
 
Registrado: may 2003
Ubicación: Caracas, Venezuela
Posts: 111
Poder: 21
Carlos Arevalo Va por buen camino
Primero que nada muchas gracias por tu ayuda y pido disculpas por no explicarme bien.

El string que estoy capturando puede llegar con cualquier tipo de comandos delante y atras.
Ejemplo:
fy))'k4'&TTT

Incluso puede variar el tamaño.
Ejemplo:
fy))'k44'&TTTTTT

Lo que quiero es poder capturar toda la cadena incluyendo los comandos de salto de carro etc. para que en el tedit me muestre '#$D#$An1#$D#$A' y no esto 'n1'. por ejemplo.


Muchas gracias y te pido disculpas de nuevo.
__________________
Carlos Arevalo
MSN Messenger: carlos@arevalo.com.ve
Responder Con Cita
  #6  
Antiguo 23-10-2006
Avatar de Enan0
Enan0 Enan0 is offline
Miembro
 
Registrado: may 2004
Ubicación: Argentina
Posts: 565
Poder: 20
Enan0 Va por buen camino
y bueno mira, Creo que la solucion seria agarrar ese codigo y mo dificarlo para cada caso.
Podrias hacerlo Poniendo con varios if. y sabrias que tipo de comando viene y su longitud. ahora creo que deberias modificar eso teque tenes ahi a tu gusto y placer.

saludos
Responder Con Cita
Respuesta



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
retorno de carro sergio17 Varios 3 25-07-2006 17:17:42
Salto de Carro por teclado nazosoto Varios 1 07-07-2006 16:07:19
DBMemo y retorno de carro?? ramonibk Varios 3 30-07-2004 14:16:53
Impresion en carro largo Hidalgo Impresión 2 31-05-2004 21:50:32
retorno de carro empty Varios 3 14-05-2004 10:21:39


La franja horaria es GMT +2. Ahora son las 21:24:04.


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