制作加密文本文件程序

      编程资料 2004-12-20 20:25
制作加密文本文件程序

1.原理
从源文本文件中按顺序读出每一个字符,然后把读出的字符转换为相应的ASCII码,将此ASCII码加上整数密钥Key,最后把所得结果再转回相应的字符并同时把它写入到另外一个文件中,这就是加密过程。解密码过程与加密过程刚好是相反的操作。
2.界面设计
新建一个工程,在Form1中添加一个Label,一个Edit和两个Button,程序的界面设置与布局如图所示。
图一 界面布局
3.程序清单
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
Edit1: TEdit;
Label1: TLabel;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;
f1,f2: textfile; //定义两个Textfile文本文件类型变量
ch:char;
Key:integer;
implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
AssignFile(F1, 'c:\a.txt');
Reset(F1);
AssignFile(F2, 'c:\b.txt');
Rewrite(F2);
Key:=strtoint(Edit1.Text);
while not Eof(F1) do
begin
Read(F1, Ch);//从a.txt中读出一个字符ch
ch:=chr(ord(ch)+Key);//把ch转换为ASCII码后加上key,再将结果转换回对应的字符
Write(F2, Ch);//把加密后的ch写到b.txt中
end;
CloseFile(F2);
CloseFile(F1);
showmessage('加密完毕!');
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
AssignFile(F1, 'c:\b.txt');
Reset(F1);
AssignFile(F2, 'c:\c.txt');
Rewrite(F2);
Key:=strtoint(Edit1.Text);
while not Eof(F1) do
begin
Read(F1, Ch);//从b.txt中读出一个字符ch
ch:=chr(ord(ch)-key); //把ch转换为ASCII码后减去key,再将结果转换回对应的字符
Write(F2, Ch);//把解密后的ch写到c.txt中
end;

CloseFile(F2);
CloseFile(F1);
showmessage('解密完毕!');
end;
end.
标签集:TAGS:
回复Comments() 点击Count()

回复Comments

{commentauthor}
{commentauthor}
{commenttime}
{commentnum}
{commentcontent}
作者:
{commentrecontent}