Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 16-08-2012
ASAPLTDA ASAPLTDA is offline
Miembro
 
Registrado: jun 2003
Ubicación: COLOMBIA-CALI
Posts: 639
Poder: 24
ASAPLTDA Va por buen camino
Smile archivo csv

Cita:
Empezado por Casimiro Notevi Ver Mensaje
No entiendo la explicación, ¿quieres decir que el fichero de texto tiene un formato especial?, ¿que no es texto 'normal'?

¿Es posible que pongas aquí un trozo de fichero para que le echemos un vistazo?
Gracias casimiro por tu interes, Voy a envia el archivo original y el archivo copia usando el clipboard para que puedan observar alguna difrencia que no he podido hallar.
El archivo que tiene las letras xxxx al final es la copia usando el copy a clipboard

Usdo delphi 5

Última edición por ASAPLTDA fecha: 21-03-2018 a las 14:44:13.
Responder Con Cita
  #2  
Antiguo 16-08-2012
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
El archivo original está en unicode que no puede leer delphi 5 directamente pero sí delphi xe. Tendrías que convertir primero el archivo antes de poder leerlo.

// Saludos
Responder Con Cita
  #3  
Antiguo 16-08-2012
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Me encontré esta función aquí, al parecer de Peter Below

Código Delphi [-]
procedure LoadUnicodeFile(const FileName: String; Strings: TStrings);
  procedure SwapWideChars(p: PWideChar);
  begin
    while p^ <> #0000 do
    begin
      p^ := WideChar(Swap(Word(p^)));
      Inc( p );
    end;
  end;

var
  Stream: TMemoryStream;
  wChar: WideChar;
  pwChar: PWideChar;

begin
  Stream:= TMemoryStream.Create;

  try
    Stream.LoadFromFile(FileName);
    Stream.Seek(0, soFromEnd);
    wChar := #0000;
    Stream.Write(wChar, SizeOf(wChar));

    pwChar := Stream.Memory;
    if pwChar^ = #$FEFF then // normal byte order mark
      Inc(pwChar)
    else if pwChar^ = #$FFFE then
    begin // byte order is big-endian
      SwapWideChars(pwChar);
      Inc(pwChar);
    end
    else; // no byte order mark

    Strings.Text := WideChartoString(pwChar);
  finally
    Stream.free;
  end;
end;

Su uso es muy sencillo:

Código Delphi [-]
LoadUnicodeFile('c:\ruta\a\PLANO_WMS3.TXT', Memo1.Lines);

Ojalá te sirva.

// Saludos
Responder Con Cita
  #4  
Antiguo 16-08-2012
Avatar de Casimiro Noteví
Casimiro Noteví Casimiro Noteví is offline
Merodeador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.695
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
Me lo guardo, puede hacer falta
Responder Con Cita
  #5  
Antiguo 16-08-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola.

Para sumar otra opción: Delphi Gems Unicode library, free (licencia MIT) para plataformas Delphi 4 - 5, BCB 4 - 5.

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #6  
Antiguo 16-08-2012
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
A decir verdad, esa biblioteca fue lo primero que encontré e incluso la descargué. Pero soy muy flojo y de buenas a primeras no vi cómo usarla para resolver el problema del compañero, así que seguí con mi búsqueda en Google .

// Saludos
Responder Con Cita
  #7  
Antiguo 17-08-2012
ASAPLTDA ASAPLTDA is offline
Miembro
 
Registrado: jun 2003
Ubicación: COLOMBIA-CALI
Posts: 639
Poder: 24
ASAPLTDA Va por buen camino
Cool Leyendo archivo con caractres unicode con delphi 5

Gracias Forista Roman y a los otros foristas por su pronta respuesta
Usando el codigo de Peter Below facilitado por roman he podidom solucionar el problema con un par de copy paste

[quote=roman;439752]Me encontré esta función aquí, al parecer de Peter Below
Responder Con Cita
  #8  
Antiguo 17-08-2012
ASAPLTDA ASAPLTDA is offline
Miembro
 
Registrado: jun 2003
Ubicación: COLOMBIA-CALI
Posts: 639
Poder: 24
ASAPLTDA Va por buen camino
Como se Identifica el Archivo tenga caracteres Unicode?

Cita:
Empezado por roman Ver Mensaje
El archivo original está en unicode que no puede leer delphi 5 directamente pero sí delphi xe. Tendrías que convertir primero el archivo antes de poder leerlo.
Gracias Roman, al identificar que el archivo venia con caracteres unicode, varios foristas enviaron soluciones para poder leer los datos con delphi 5. Copie la intruccion del fuente de Peter Below enviado por nuestro companero, no entiendo como lo hace pero lo hace (
Toca estudiar mas delphi )

roman como identifico que venia con caractrres unicode ?
Responder Con Cita
  #9  
Antiguo 17-08-2012
Avatar de Casimiro Noteví
Casimiro Noteví Casimiro Noteví is offline
Merodeador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.695
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
Cita:
Empezado por ASAPLTDA Ver Mensaje
roman como identifico que venia con caractrres unicode ?
Fíjate en la diferencia, en el "normal" hay un espacio por cada caracter. En el unicode, que tiene más de un byte por caracter como puedes ver:




Última edición por Casimiro Noteví fecha: 17-08-2012 a las 00:24:57.
Responder Con Cita
  #10  
Antiguo 17-08-2012
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Cita:
Empezado por ASAPLTDA Ver Mensaje
roman como identifico que venia con caractrres unicode ?
Ya Casimiro dió la respuesta correcta y científica Yo me limité a abrir el archivo con EditPlus y en la esquina inferior derecha claramente decía: Unicode



Ya dije que soy muy flojo

// Saludos

Última edición por roman fecha: 17-08-2012 a las 06:11:23.
Responder Con Cita
  #11  
Antiguo 17-08-2012
Avatar de Casimiro Noteví
Casimiro Noteví Casimiro Noteví is offline
Merodeador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.695
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
Cita:
Empezado por roman Ver Mensaje
Ya dije que soy muy flojo
Son las cosas de la edad


A mi me pasa igual
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
Lectura de archivo en paralelo jars OOP 0 19-12-2011 14:31:10
Ayuda con Lectura de archivo fleming Varios 14 07-09-2010 10:22:56
Lectura de un archivo plano josem Varios 2 13-09-2006 23:06:39
Lectura continua de Archivo friendspark API de Windows 2 02-02-2006 16:27:52
lectura lenta de un archivo .DAT, ¿por que? URBANO Varios 3 09-12-2003 21:07:16


La franja horaria es GMT +2. Ahora son las 04:12:14.


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