从Web服务器上取一个gpg图片显示,jpeg error #52问题,呜呜

Rukee 2003-04-08 11:09:00
代码如下,从Web服务器上取一个gpg图片显示,老是报,jpeg error #52问题是什么问题呀
AnsiString strStream;
TMemoryStream *memStream=new TMemoryStream();
TJPEGImage *jpegimg=new TJPEGImage();
strStream = IdHTTP1->Get("http://localhost/fc1_3.jpg");
try{
memStream->Write(&strStream, strStream.Length());
memStream->Seek(0,soFromBeginning);
jpegimg->LoadFromStream(memStream);
Image1->Picture->Assign(jpegimg);
}
__finally
{
memStream->Free();
jpegimg->Free() ;
}
...全文
117 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
Rukee 2003-04-08
  • 打赏
  • 举报
回复
文件没问题,我用delphi做的测试通过,就是BC的不行
以下是Delphi的代码:
procedure TForm1.BitBtn1Click(Sender: TObject);
var
strStream: String;
memStream: TMemoryStream;
jpegimg: TJPEGImage;
begin
strStream := idhttp1.Get('http://localhost/fc1_3.jpg');
memStream := TMemoryStream.Create;
jpegimg := TJPEGImage.Create;
try
memStream.Write(strStream[1], Length(strStream));
memStream.Position := 0;
showmessage(Inttostr(Length(strStream)));
jpegimg.LoadFromStream(memStream);
Image1.Picture.Assign(jpegimg);
finally
memStream.Free;
jpegimg.Free;
end;
end;
xuv2002 2003-04-08
  • 打赏
  • 举报
回复
应该是你的memstream 读取错误,或是文件格式不正确
才会抱错吧
netying 2003-04-08
  • 打赏
  • 举报
回复
我也遇到这个错误,
Rukee 2003-04-08
  • 打赏
  • 举报
回复
已经搞定了,多谢大家帮忙!分享:
memStream->Write(&strStream, strStream.Length());
改为:
memStream->Write(strStream.c_str(), strStream.Length());

13,871

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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