求delphi 选择savedialog对话框可保存两种文件类型的语句?
要求在“文件名”栏只写文件名称,不写后缀的情况下,如何成功另存为用户选择的格式?procedureTForm1.Button1Click(Sender:TObject);...
要求在“文件名”栏只写文件名称,不写后缀的情况下,如何成功另存为用户选择的格式?
procedure TForm1.Button1Click(Sender: TObject);
begin
SaveDialog.Filter :='textFile(*.txt)|*.txt|docFile(*.doc)|*.doc|AllFile(*.*)|*.*';
SaveDialog.FilterIndex :=1;
SaveDialog.DefaultExt :='txt';
//下边怎么写
end;
SaveDialog.Filter :='wavFile(*.wav)|*.wav|mp3file(*.mp3)|*.mp3|AllFile(*.*)|*.*';
SaveDialog.FilterIndex :=1;
SaveDialog.DefaultExt :='wav';
恕我学艺不精。你的程序固然能通过。但要是上述txt、doc分别替换成wav、mp3(即以上代码),则wav可直接保存,而MP3需由wav转换而来。希望是若按默认类型即保存成wav,若选择MP3类型则还要通过转换代码而保存成MP3文件。转换语段在这里略去。如此上述程序框架应作怎样的改动? 展开
procedure TForm1.Button1Click(Sender: TObject);
begin
SaveDialog.Filter :='textFile(*.txt)|*.txt|docFile(*.doc)|*.doc|AllFile(*.*)|*.*';
SaveDialog.FilterIndex :=1;
SaveDialog.DefaultExt :='txt';
//下边怎么写
end;
SaveDialog.Filter :='wavFile(*.wav)|*.wav|mp3file(*.mp3)|*.mp3|AllFile(*.*)|*.*';
SaveDialog.FilterIndex :=1;
SaveDialog.DefaultExt :='wav';
恕我学艺不精。你的程序固然能通过。但要是上述txt、doc分别替换成wav、mp3(即以上代码),则wav可直接保存,而MP3需由wav转换而来。希望是若按默认类型即保存成wav,若选择MP3类型则还要通过转换代码而保存成MP3文件。转换语段在这里略去。如此上述程序框架应作怎样的改动? 展开
4个回答
展开全部
procedure TForm1.Button1Click(Sender: TObject);
var
FileExt: string;
begin
SaveDialog.Filter :='textFile(*.txt)|*.txt|docFile(*.doc)|*.doc|AllFile(*.*)|*.*';
SaveDialog.FilterIndex :=1;
SaveDialog.DefaultExt :='txt';
//下边代码
if SaveDialog.Execute then
begin
FileExt := ExtractFileExt(SaveDialog.FileName);
if SameText(FileExt, '.txt') then
begin
{保存文本格式的代码}
end
else if SameText(FileExt, '*.doc') then
begin
{保存doc格式的代码}
end
else
begin
{保存文本格式的代码}
end;
end;
end;
var
FileExt: string;
begin
SaveDialog.Filter :='textFile(*.txt)|*.txt|docFile(*.doc)|*.doc|AllFile(*.*)|*.*';
SaveDialog.FilterIndex :=1;
SaveDialog.DefaultExt :='txt';
//下边代码
if SaveDialog.Execute then
begin
FileExt := ExtractFileExt(SaveDialog.FileName);
if SameText(FileExt, '.txt') then
begin
{保存文本格式的代码}
end
else if SameText(FileExt, '*.doc') then
begin
{保存doc格式的代码}
end
else
begin
{保存文本格式的代码}
end;
end;
end;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
对SaveDialog.filename 在做一次判断不就可以了,不用纠结!
SaveDialog所做的只是文件名的确定,并没有真的保存!所以待分析处理完毕后在真正保存即可。
SaveDialog所做的只是文件名的确定,并没有真的保存!所以待分析处理完毕后在真正保存即可。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
SaveDialog的执行只是返回文件路径而已,剩下的都可以自己定义。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
-------------理解错了,不好意思,我也答不上
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询