我想用http控件将一个网站的图片下载下来,保存在特定的目录下,如何实现!

BCBChina 2003-12-14 11:47:42
最好有代码!谢谢
...全文
57 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
hebei 2003-12-16
  • 打赏
  • 举报
回复
to: invalid(空心菜)
TMemoryStream* pms = new TMemoryStream();
pms好似可以直接保存为文件
pms->SaveToFile(const System::AnsiString FileName);
invalid 2003-12-14
  • 打赏
  • 举报
回复
在窗体上放一个TIdHttp组件。

void __fastcall TForm1::btnDownLoadClick(TObject *Sender)
{
TMemoryStream* pms = new TMemoryStream();
try
{
SB1->SimpleText = "开始下载...";
IdHTTP1->Get(editUrl->Text,pms);
SB1->SimpleText = "下载成功";
String AFileName;
if (PromptForFileName(AFileName,"","","保存为","",true))
{
TFileStream *fs = new TFileStream(AFileName, fmCreate);
try
{
pms->Position = 0;
fs->CopyFrom(pms,pms->Size);
delete fs;
SB1->SimpleText = "下载成功,文件保存为"+AFileName;
}
catch(...)
{
MessageBox(Handle,"写文件错误!",Application->Title.c_str(),MB_ICONWARNING|MB_OK|MB_SETFOREGROUND);
}
}
}
catch(Exception &e)
{
MessageBox(Handle,("错误!"+e.Message).c_str(),Application->Title.c_str(),MB_ICONINFORMATION|MB_OK|MB_SETFOREGROUND);
SB1->SimpleText = e.Message;
}
delete pms;
}
warton 2003-12-14
  • 打赏
  • 举报
回复
要下载分析html吧,找到所有的图片的相对目录,然后再发请求下载....(我也没写过)
叶子哟 2003-12-14
  • 打赏
  • 举报
回复
不太好弄,你得弄清楚页面上所有的图的位置
找个网爪的程序看看吧
要不然,弄个另存为试试

1,317

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder 网络及通讯开发
社区管理员
  • 网络及通讯开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧