responsesetHeaderquotContentTypequotresponse.flush,quotimagejpedquot设置响应的媒体类型response.flush,这样浏览器会识别出响应的是图片 responsegetOutputStreamwritebytesresponseflushresponse.flush;AddHeader是明确告诉浏览器,下一步处理的指示,比如这是一个下载文件,是打开还是下载,有多少长度,什么格式在服务器端可以多次添加header ,header的处理,应该在内容数据发送之前写入文件字节流之前通过ResponseFlush or End 方法可以将标头发送到客户端未发送之前,如果是缓存模式,add;解决办法有1在responsesendRedirect后加return语句即可,如下responsesendRedirectquotloginjspquot return2检查提交的url是否有误3如果页面中用了清缓存代码responseflushbuffer又用到了responsesendRedirecturl 可以把responseflushbuffer去掉,或者用JS的=;flush的内容至少要有256字节也就是只有编译产生了至少256字节的数据,才能在执行ResponseFlush以后将信息发到客户端并显示测试一下是否这个原因 可能就是数据量的问题吧。
网上方法不少,可以尝试搜索一下第一种方法ResponseClearContentResponseClearHeadersResponseContentType = quotApplicationmswordquotstring s=ServerMapPathquotEwendangwo582docquotResponseWriteFilequotEwendangwo582docquotResponseWritesResponseFlushResponseClose;这个需要经验的 另外一个办法是,分别输出错误,在错误1输出后,用responsend停止另外输出错误变量应该是用responswrite吧,responseflush功能是输出缓存区的控制指令,无法输出具体内容。
ResponseBuffer = trueResponseContentType = quotapplicationoctetstreamquotResponseAddHeaderquotContentDispositionquot, quotattachmentfilename=quot +;ResponseBuffer = True 然后使用Responseflush立即将缓冲区的数据输出浏览器注意table,因为如果table没有结束的话,response.flush你使用Responseflush将数据输出到用户的浏览器上,浏览器还是不能将未完成的table输出来的要特别注意这个 4;ResponseBinaryWritebytes向客户端写数据 ResponseFlush表示向客户端一点一点的写数据,流动的方式,而不会使得数据堆在内存中,造成客户端假死的现象 ResponseEnd结束 2至于response.flush你说的其中response一直说上下文中没有 你试下把fsClose放到ResponseFlush后面或者Response;quotstring fileContent=quotquotstring newname=quot张三jpgquotResponseClearHeadersResponseClearContentResponseContentEncoding = EncodingDefaultResponseAddHeaderquotContentDispositionquot, quotattachment filename=quot+newnameResponseWritefileContentResponseFlushResponseEnd。
1ResponseWrite主要用于输出内容信息,如将一些字符串信息输出到客户端2ResponseWriteFile将页面以文件流的形式输出到客户端,一般常与ContentType属性一起使用3ResponseRedirect用于页面重定向可跳转本网站的网址,也可是互联网上任何一个站点的网址4ResponseFlush将;1Response对象之Flush方法,立即发送缓冲区中的输出如果未将 ResponseBuffer 设置为 TRUE,则该方法将导致运行时错误语法ResponseFlush注释如果在 ASP 页上调用 Flush 方法,则服务器将响应该页上保持活动的请求应用于Response对象关于Buffer,这里有段介绍Buffer从英文直译过来的意思是“;while dataLength 0 int lengthRead = fsReadbuffer, 0, ConvertToInt32ChunkSizebuffer, 0, lengthReaddataLength = dataLength lengthRead 这是导出xls的 quot;利用缓冲输出数据的意思,就是当ASP脚本需要向浏览器端输出数据时,并不是立即输出的,而是先存放到服务器内存的缓冲区内,待程序执行完毕或接收到特定指令如responseflush或responseend时,再将输出结果一次性发送到浏览器端而如果不采用缓冲输出,则每次输出都是立即发送到浏览器端的缓冲输出;设置响应的类型为八进制文件ResponseContentType = quotapplicationoctetstreamquot添加文件下载头信息ResponseAddHeaderquotContentDispositionquot, quotattachment filename=filetxtquot刷新响应缓冲区ResponseFlush将指定路径的文件写入响应ResponseWriteFileDownloadFilePath其中,ResponseClear。
ResponseBinaryWritewjwj是文件 ResponseFlush ResponseEnd这些都是网上的代码,可是我这样做,每次都是找开文件,而不是下载文件为什么,怎么就能做到下载文件了,我这个是从数据库中读出来的,读出来的文件是一个流, 展开 #xE768 我来答 5;ResponseAppendHeaderquotContentDispositionquot, quotattachmentfilename=quot +。
联系电话:18300931024
在线QQ客服:616139763
官方微信:18300931024
官方邮箱: 616139763@qq.com