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 18-10-2006
pelaorb68 pelaorb68 is offline
Miembro
 
Registrado: oct 2005
Posts: 32
Poder: 0
pelaorb68 Va por buen camino
Problema con TFileStream

Hola a todos nuevamente, estoy intentando utilizar TFileStream, pero no logro enterder su funcionamiento, por lo tanto no sé si es lo que necesito o estoy haciendo algo mal con él.
Resulta que quiero grabar unas cadenas de caracteres en archivo, pero que al editar el archivo sean caracteres ilegibles. Para ello estoy probando TFileStream. Según el código siguiente, FilesStream hace lo que necesito:

Código Delphi [-]
var
  fOut   : TFileStream;
  sLine: string;
begin
    sLine := 'Esta en una linea de Prueba con FileStream';
    fOut := TFileStream.Create(cFileName,fmCreate);
    fOut.Write(sLine,Length(sLine));
    fOut.Free;
end;

El punto es cómo hago ahora para leer el archivo recién creado y recuperar la información como la cadena string original?????

Desde ya muchas gracias por la ayuda que me puedan brindar.......
Responder Con Cita
  #2  
Antiguo 18-10-2006
[maeyanes] maeyanes is offline
Capo de los Capos
 
Registrado: may 2003
Ubicación: Campeche, México
Posts: 2.732
Poder: 24
maeyanes Va por buen camino
Me imagino que sería algo parecido:

Código Delphi [-]
var
  fIn: TFileStream;
  sLine: array [0..255] of Char;

begin
  fIn := TFileStream.Create(cFileName, fmOpenRead);
  try
    fIn.Read(sLine, 100); // Lee 100 bytes del archivo...
  finally
    fIn.Free
  end
end;


Saludos...
Responder Con Cita
  #3  
Antiguo 18-10-2006
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
Vamos a ver, para grabar un string debes de hacer algo como esto:

Código Delphi [-]
var
  fOut   : TFileStream;
  sLine: string;
begin
    sLine := 'Esta en una linea de Prueba con FileStream';
    fOut := TFileStream.Create(cFileName,fmCreate);
    fOut.Write(PChar(sLine)^,Length(sLine)); // <--
    fOut.Free;
end;

Piensa que tal como lo tenias antes lo que mandabas escribir no era el contenido del string, si no la propia variable string que no es mas que un puntero.
Responder Con Cita
  #4  
Antiguo 18-10-2006
pelaorb68 pelaorb68 is offline
Miembro
 
Registrado: oct 2005
Posts: 32
Poder: 0
pelaorb68 Va por buen camino
Lo que pasa es que cuando hago el Write con Pointer, me graba la cadena tal cual como es, es decir, si alguien editara el archivo leería la cadena sin ningún problema.
Responder Con Cita
  #5  
Antiguo 18-10-2006
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
Cita:
Empezado por pelaorb68
Lo que pasa es que cuando hago el Write con Pointer, me graba la cadena tal cual como es, es decir, si alguien editara el archivo leería la cadena sin ningún problema.
Y si lo haces de la otra manera lo que estas grabando es basura que se encuentra en memoria, esa información de poco te va a servir. Lo que tu necesitas es cifrar el texto antes de guardarlo.
Responder Con Cita
  #6  
Antiguo 18-10-2006
pelaorb68 pelaorb68 is offline
Miembro
 
Registrado: oct 2005
Posts: 32
Poder: 0
pelaorb68 Va por buen camino
Entiendo perfectamente, lo que ahora no logro entender es que sentido tiene el FileStream......cuando hace casi lo mismo que TextFile......

Voy a intentar cifrar el texto antes de grabar........

Muchísimas gracias por sus prontas respuestas......
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
Manejo enteros tipo short con TFileStream elcaracas C++ Builder 0 31-08-2005 16:24:05
Uso de TFileStream esocrates Varios 4 09-04-2005 23:47:17
Problemas al transferir un TFileStream JCR Internet 4 18-07-2004 03:25:38
Escribir un objeto en un TFileStream doverzhoff Varios 3 06-02-2004 04:00:33
TFileStream doverzhoff Varios 1 25-10-2003 18:49:38


La franja horaria es GMT +2. Ahora son las 02:57:16.


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