Ver Mensaje Individual
  #9  
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
Reputación: 26
seoane Va por buen camino
Hombre Dec, me has dejado estrañado

En las cadenas de texto (strings) tanto en C como en delphi, se manejan de una forma similar (por lo menos internamente), cada caracter se corresponde con un byte. Si tu escribes esos bytes a un archivo, tal cual, tienes un archivo de texto completamente legible. El caracter 'A' es igual al byte 65, da lo mismo si en un archivo de texto guardas una 'A' que si en un archivo binario guardas el byte 65. La verdad me siento un poco tonto explicandote esto a ti que seguro ya lo sabes ....

Por ejemplo:
Código Delphi [-]
var
  F: File;
  T: TextFile;
  B: Byte;
begin
  AssignFile(T,'d:\1.txt');
  {$I-}
    Rewrite(T);
  {$I+}
  if IOResult=0 then
  begin
    Write(T,'Hola');
    CloseFile(T);
  end;

  AssignFile(F,'d:\1.bin');
  {$I-}
    Rewrite(F,1);
  {$I+}
  if IOResult=0 then
  begin
    B:= Ord('H');
    BlockWrite(F,B,1);
    B:= Ord('o');
    BlockWrite(F,B,1);
    B:= Ord('l');
    BlockWrite(F,B,1);
    B:= Ord('a');
    BlockWrite(F,B,1);
    CloseFile(F);
  end;
end;

En el ejemplo anterior, ambos archivos son iguales. Y el segundo no puede ser mas "binario" . La única forma de hacer ilegible una cadena es el cifrado, entendiendo que cifrado no solo incluye métodos de criptografía como AES, si no también métodos tan simples como cambiar cada carácter por otro.
Responder Con Cita