加解密文本(0分)

J

jcjy

Unregistered / Unconfirmed
GUEST, unregistred user!

{从文本文件导数据到数据库过程}
procedure TDM.DataSetFromText(aDataSet: TDataSet; fileName: string);
var
valueList:TStringList;
i:integer;
f:Textfile;
S:string;
begin
valueList:=TStringList.Create;//创建它,用于处理文件中每行数据
assignfile(f, filename);
Reset(f);
try
valueList.Delimiter:=',';
with aDataSet do
begin
Open;

while not system.Eof(F) do
begin
Readln(f,S);
valueList.DelimitedText:=S;
Append;
for i := 0 to fieldCount-1 do
begin
try
//进行解密

Fields.Fields.AsString:= (valueList.Strings);
except
// 有些字段不可写。就抓住这异常,忽略它。
end;

end;
Post;
end;
Close;
end;
finally
CloseFile(f);
ValueList.Free;
end;

end;
//加解密字符串函数
function TDM.MyDeCode(instr: string): string;
var
s:string;
a,b:char;
a1,b1:Shortint;
i,j,n,instrlen:integer;
keystr:string;

begin
keystr:='howareyou?';
s:='';
n:=length(keystr);
instrlen:=length(instr);
j:=1;
for i :=1 to instrlen do
begin
a:=instr;
a1:=Shortint(a);
b:=keystr[j];
b1:=Shortint(b);
a1:=a1 xor b1;
a:=char(a1);
s:=s+a;
inc(j);
if j > length(keystr) then j:=1;
end;

Result:=s;
end;


{从数据集导出到文本文件}
procedure TDM.DataSetToText(aDataSet: TDataSet; filename: string);
var
f:Textfile;
str:string;
i:integer;
valueList:TStringList;
begin
valueList:=TStringList.Create;
assignfile(f, filename);
try

rewrite(f);
with aDataSet do
begin
Open;
First;
While not Eof do
begin
str:='';
valueList.Clear;
for i := 0 to fieldCount-1 do
begin
//对运行加密函数。
valueList.Add(trim(fields.asstring));
end;
valueList.Delimiter:=',';
str:=valueList.DelimitedText;
writeln(f,str);
Next;
end;
Close;
end;
finally
CloseFile(f);
valueList.Free;
end;

end;
我在上面的过程中想加入对数据的加解密处理,但没有加对,请高手指点一下。
 
顶部