![]() |
|
|
#1
|
|||
|
|||
|
вот делаю так
Код:
var
FS : TFileStream;
ST : TStream;
buf : array[0..255] of integer;
begin
FS := TFileStream.Create('data.txt',fmCreate);
ST := TMemoryStream.Create;
Memo1.Lines.SaveToStream(ST);
ST.Write(buf,ST.Size * 3);
FS.Write(ST,ST.Size);
FS.Free;
ST.Free;
end;все ок, но а прочитать как ? ![]() Последний раз редактировалось Admin, 04.02.2009 в 17:15. |
|
#2
|
|||
|
|||
|
ее что некто не знает?
|
|
#3
|
||||
|
||||
|
Шифруем/дешифруем строку, остальное сам догадаешься как сделать, наверно
Код:
unit CUnit; interface const XDefKey = 15; SDefKey = '15'; function XDeCode(S: String; Code: Integer = XDefKey): String; Function SCrypt(Text: String; Encode: Boolean = True; Key: String = SDefKey): String; implementation function XDeCode(S: String; Code: Integer): String; var T: Integer; begin for T := 1 to Length(s) do S[T] := CHR(ORD(S[T]) xor Code); RESULT := S; end; Function SCrypt(Text: String; Encode: Boolean; Key: String): String; Var I, KeyLength : integer; Sign : ShortInt; Begin KeyLength := Length(Key); If Encode then Sign := -1 else Sign := 1; //шифровать или расшифровывать? For I := 1 to Length(Text) do //код символа исходного текста складывается с кодом символа ключа // пароль при этом умножается Text[i] := CHR(ORD(Text[i]) + Sign * ORD(Key[I mod KeyLength + 1])); Result := Text; End; end. |