我的意思是说:我打开一个OpenDialog1后我选了一个文件,之后,我把他包存(弹出SaveDialog1) 然后我输入 保存的文件名,点OK后 为什么老是没有保存呢?
代码如下:
if OpenDialog1.Execute then
begin
if saveDialog1.Execute then
// 此处代码怎么写?
end;
代码如下:
if OpenDialog1.Execute then
begin
if saveDialog1.Execute then
// 此处代码怎么写?
end;
begin
if saveDialog1.Execute then
// 此处代码怎么写?
Memo.line.LoadFromFile(OpenDialog1.FileName);
Memo.line.SaveToFile(SaveDialog.FileName);
end;
因为 有时后是图片,有时后是压缩包,有时后是.htm文件。当我在saveDialog1中选择一个文件后,我在SaveDialog中如何只要写个要保存的文件名就可以了 不管是什么 后缀 都能存储?
FileSource,FileDest:TfileStream
FileStrD,FileStrs:string;
begin FileStrD:=FileSave.FileName;
FileStrs:=OpenDialog1.FileName;
FileSource:=TFileStream.Create(FileStrS,fmOpenRead or fmShareDenyWrite);
try //打开源文件及目的文件流
FileDest:=TFileStream.Create(FileStrD,fmOpenWrite or fmShareDenyRead);
try
FileDest.CopyFrom(FileSource,FileSource.Size);
finally
FreeAndNil(FileDest);
end;
finally
FreeAndNil(FileSource); //释放文件流
end;
FileSource:=TFileStream.Create(FileStrS,fmOpenRead or fmShareDenyWrite);
上面的语句中 的 FileStrS是什么东西 好象没有定义过?
procedure TForm1.Button1Click(Sender: TObject);
var
FileSource ,FileDest : Tfilestream;
fileStrd,FileStrs:string;
begin
if opendialog1.Execute then
begin
filestrs := opendialog1.FileName;
end;
// FileStrD := SaveDialog1.FileName; fileSource := TFileStream.Create(filestrs,fmOpenRead or fmShareDenyWrite);
try
if savedialog1.Execute then
begin
filestrd := savedialog1.FileName;
end;
fileDest := TFileStream.Create(FileStrD,fmOpenWrite or fmShareDenyRead);
try
FileDest.CopyFrom(FileSource,FileSource.Size);
finally
FreeAndNil(FileDest);
end;
finally
FreeAndNil(FileSource); //释放文件流
end;end;
FileSource ,FileDest : Tfilestream;
fileStrd,FileStrs:string;
F:File;
begin
if opendialog1.Execute then
begin
filestrs := opendialog1.FileName;
end;
// FileStrD := SaveDialog1.FileName; fileSource := TFileStream.Create(filestrs,fmOpenRead or fmShareDenyWrite);
try
if savedialog1.Execute then
begin
filestrd := savedialog1.FileName;
end;
if not FileExists(Filestrd) then//如不存在新建
begin
assignFile(F,Filestrd);
Rewrite(f);
CloseFile(F);
end; fileDest := TFileStream.Create(FileStrD,fmOpenWrite or fmShareDenyRead);
try
FileDest.CopyFrom(FileSource,FileSource.Size);
finally
FreeAndNil(FileDest);
end;
finally
FreeAndNil(FileSource); //释放文件流
end;end;
测试已通过
2.文件类型:saveDialog1.Fileter:='执行文件|*.exe|位图文件|*.bmp'
说明一下第一问题其实是不需要加路径的,saveDialog1.filename已经包括路径了
检查一下的源码是否抄错?
我已测试过