X
xiongyp
Unregistered / Unconfirmed
GUEST, unregistred user!
新建目录情况要好一些,覆盖备份成功率低。
procedure TfrmBF.Button1Click(Sender: TObject);
var
pathS,pathN,s:String; //源文件,目标文件
FN:array[0..9] of String;
FromF, ToF: file;
i,NumRead, NumWritten: Integer;
Buf: array[1..2048] of Char;
begin
if edit1.Text = '' then exit;
FN[0]:='个人.db'; //保存在执行文件目录下要备份的表
FN[1]:='记录.db';
FN[2]:='名单.db';
FN[3]:='牌价.db';
FN[4]:='利率.db';
FN[5]:='上存.db';
FN[6]:='经理.db';
FN[7]:='企业.db';
FN[8]:='备注.db';
FN[9]:='备注.MB';
s:=edit1.Text;
for i:=0 to 9 do
begin
pathS:=ExtractFilePath(application.exename)+FN;
AssignFile(FromF,pathS);
Reset(FromF,1);
if DirectoryExists(s) = false then //检查目录名是否存在
if MessageDlg('当前目录目录并不存在,要创建它吗?',mtConfirmation,
[mbOK,mbCancel],0)=mrOk then
MkDir(s)
else
exit;
if copy(s,length(s),1)<>'/' then //检查最后字符是否为"/"
s:=s+'/';
pathN:=s + FN; //得到完整的目录
AssignFile(ToF,pathN);
Rewrite(ToF, 1);
repeat
BlockRead(FromF, Buf, SizeOf(Buf), NumRead);
BlockWrite(ToF, Buf, NumRead, NumWritten);
until (NumRead = 0) or (NumRead <> NumRead);
CloseFile(FromF);
CloseFile(ToF);
end;
ShowMessage('数据备份完毕!');
Close;
end;
procedure TfrmBF.Button1Click(Sender: TObject);
var
pathS,pathN,s:String; //源文件,目标文件
FN:array[0..9] of String;
FromF, ToF: file;
i,NumRead, NumWritten: Integer;
Buf: array[1..2048] of Char;
begin
if edit1.Text = '' then exit;
FN[0]:='个人.db'; //保存在执行文件目录下要备份的表
FN[1]:='记录.db';
FN[2]:='名单.db';
FN[3]:='牌价.db';
FN[4]:='利率.db';
FN[5]:='上存.db';
FN[6]:='经理.db';
FN[7]:='企业.db';
FN[8]:='备注.db';
FN[9]:='备注.MB';
s:=edit1.Text;
for i:=0 to 9 do
begin
pathS:=ExtractFilePath(application.exename)+FN;
AssignFile(FromF,pathS);
Reset(FromF,1);
if DirectoryExists(s) = false then //检查目录名是否存在
if MessageDlg('当前目录目录并不存在,要创建它吗?',mtConfirmation,
[mbOK,mbCancel],0)=mrOk then
MkDir(s)
else
exit;
if copy(s,length(s),1)<>'/' then //检查最后字符是否为"/"
s:=s+'/';
pathN:=s + FN; //得到完整的目录
AssignFile(ToF,pathN);
Rewrite(ToF, 1);
repeat
BlockRead(FromF, Buf, SizeOf(Buf), NumRead);
BlockWrite(ToF, Buf, NumRead, NumWritten);
until (NumRead = 0) or (NumRead <> NumRead);
CloseFile(FromF);
CloseFile(ToF);
end;
ShowMessage('数据备份完毕!');
Close;
end;