有关流的问题(我不知道这个问题该值多少分,如果分不够,我可以再追加)(100分)

  • 主题发起人 主题发起人 maoke
  • 开始时间 开始时间
M

maoke

Unregistered / Unconfirmed
GUEST, unregistred user!
web服务器取得数据后,如何转换为一个流,传输到IE浏览器上,浏览器又如何读取该流
并将数据显示出来。web服务器取得的数据有可能为一个excel文件,也有可能为一个图形。
最好有一些代码来演示一下。
另外:如何在以后追加分数
 
不同的web服务器,不同的script语言,方式是不同的
例如用ASP,就是Response.Write
可以参见使用的语言的文档
 
谢谢左轻侯,这个问题我已经搞定了,但现在又有一个新的问题了:
我将一个excel文件读入了文件流,然后又用一个内存流取得该文件流,然后向
ie发送。原吗如下:
//对应的pathinfo为testxls
procedure TW.WTESTXLSAction(Sender: TObject;
Request: TWebRequest;
Response: TWebResponse;
var Handled: Boolean);
var
S: TMemoryStream;
Sfile:TfileStream;
begin
SFile:=TFileStream.Create('F:/Program/public/取流/test.xls',fmOpenRead);
S := TMemoryStream.Create;
try
S.LoadFromStream(SFile);
S.Position := 0;
Response.ContentType := 'xls/html';
Response.ContentStream := S;
Response.SendResponse;
finally
S.Free;
sfile.free;
end;
end;

在浏览器中输入http://mypc/test/test.exe/TESTXLS回车,
系统总是先显示下载文件对话框,我必须单击“取消”后,再按一次回车,
浏览器才会正确显示。
为什么会这样,有没有办法解决?
 
这可能是因为IE没有相应的MIME类型解释,是不是没有装EXCEL??装了的话,就应该不会这样了
 
我的机器上已经有了EXCEL2000,要不然我不会说第二次浏览器才会正确显示。
 
你改改Response的ContentType看看
 
改Response的ContentType?如何改?
 
输出图形什么的.为什么不用Tpageproducer组件onhtmltag事件呢?
 
是不是excel 2000的问题?找台装excel 97的机器试下吧。
 
excel 97有同样的问题
 
可以通过普通的页面连接试试,可能是ContentType的问题?
 
多人接受答案了。
 
后退
顶部