ASP.NET 实现Base64文件流下载PDF

因为业务需要调用接口获取的是 Base64文件流 需要提供给客户下载PDF文档

源码部分借鉴网上,具体地址忘记了。

 //Base64文件流 byte[] buffer = Convert.FromBase64String(decodedString); System.IO.Stream iStream = new System.IO.MemoryStream(buffer);try{int length;long dataToRead;string filename = sn + ".pdf";//保存的文件名称dataToRead = iStream.Length;Response.Clear();Response.ClearHeaders();Response.ClearContent();Response.ContentType = "application/pdf"; //文件类型  Response.AddHeader("Content-Length", dataToRead.ToString());//添加文件长度,进而显示进度  Response.AddHeader("Content-Disposition", "attachment; filename=" + HttpUtility.UrlEncode(filename, System.Text.Encoding.UTF8));while (dataToRead > 0){if (Response.IsClientConnected){length = iStream.Read(buffer, 0, 10000);Response.OutputStream.Write(buffer, 0, length);Response.Flush();buffer = new Byte[10000];dataToRead = dataToRead - length;}else{dataToRead = -1;}}}catch (Exception ex){Response.Write("文件下载时出现错误!");}finally{if (iStream != null){iStream.Close();}//结束响应,否则将导致网页内容被输出到文件,进而文件无法打开   Response.Flush();Response.End();}

  

转载于:https://www.cnblogs.com/LoveTX/p/6147849.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/255784.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Viewpager无限循环(首页与尾页平滑过渡)

#Viewpager无限循环(首页与尾页平滑过渡) ##double kill 在网上找了不少的viewpager无限轮播的例子,大部分都是Interger.MAX_VALUES。 滑到最后一页的时候setCurrentItem(0),这样虽然实现了无限轮播,但是当从最后一页跳转到第一页的时候不够优雅。。通过…

【深度学习】——物体检测的难点

目录 一、小物体检测 1、降采样率减小 空洞卷积 2、anchor设计 1)统计方法 2)anchor边框聚类 3、多尺度训练(multi scale training——MST) 4、 特征融合 一、小物体检测 在分类任务中,一般物体的大小都差不多&a…

ABB 机器人 通信指令(人机对话):

(1)清屏指令:TPErase (2)写屏指令:PWrite String   tring:显示的字符串。(string)在示教器显示屏上显示字符串数据,也可以用“……”形式直接定义字符串,每一个写屏…

hadoop streaming编程小demo(python版)

大数据团队搞数据质量评测。自动化质检和监控平台是用django,MR也是通过python实现的。(后来发现有orc压缩问题,python不知道怎么解决,正在改成java版本) 这里展示一个python编写MR的例子吧。 抄一句话:Hadoop Streaming是Hadoop提…

Asp.net在IE10、IE11下事件丢失经验总结

asp.net4.0出生得比IE10早,所以asp.net4.0以前版本不认识IE10 的 User-Agent 标头,导致的后果就是ASP.NET 特定功能失效,例如:页面报错__doPostBack找不到,不支援 Cookies 功能等等。这属于.net的Bug,微软也…

第6章 循环结构

循环语句: 可以让一部分代码,反复执行 1.1 循环语句while while循环: 编写格式:while(条件){ 循环体 } 条件: 当条件是true,就执行循环体,执行完循环体后 程序再次执行while中的条件,如果条件还是true,继续执行循环体 直到条件是false的时候,循环就结束 public class WhileDem…

【深度学习】——pytorch搭建模型及相关模型

目录 1、搭建模型的流程 1)步骤 2)完整代码——手写minist数据集为例(这里使用的数据集是自带的) 2、搭建模型的四种方法 1)方法一——利用nn.Sequential() 2)方法二——利用co…

ABB robot 与 Fronius 设备 IO

ABB robot 与 Fronius 设备 IO

初次使用cocoapods注意事项

在仅仅用cocoapods时可能会遇到各种各样的错误和问题 这里中总结下: 1.首先使用cocoapods有非常多优点,在github上非常多优秀的开源项目都用到了它;假设你不会使用它,那么非常多优秀的开源项目你下载下来了也发现跑不起来,假设发现有Profile,Profile.lock,Pods等cocoapods相关…

MongoDB复制集技术

为什么使用MongogDB复制集技术? mysql中:一主一从,一主多从结构存在的问题 1、 fileover(故障转移)a) 选主投票b) 切换 2、 是否对就用透明化 3、 数据补偿的问题a) 两阶段数据补偿 4、 解决方法 mysql中使用MHAVIP b…

Linux文件系统的实现 (图文并茂,比较好)

作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明。谢谢! Linux文件管理从用户的层面介绍了Linux管理文件的方式。Linux有一个树状结构来组织文件。树的顶端为根目录(/),节点为目录&#xff0…

【深度学习】——如何处理输入图像大小不一样的情况

这里一般有常见的几种方法: 1)将图像缩放成大小一致后再输入,如RCNN算法 2)roi pooling:这里允许输入图像的大小不一样,后续根据指定的固定大小来求解池化的核大小,以此来得到相同大小的特征图&…

ROS探索总结(一)——ROS简介

随着机器人领域的快速发展和复杂化,代码的复用性和模块化的需求原来越强烈,而已有的开源机器人系统又不能很好的适应需求。2010年Willow Garage公司发布了开源机器人操作系统ROS(robot operating system),很快在机器人…

微信浏览器取消缓存的方法

摘要:做微信公家号以及调试手机页面的时辰,防止不了页面要跳转到微信阅读器打开,调试阶段,android版微信阅读器一直都默许缓存html静态资本,每一次静态资本变革乃至新内容发布的时辰在微信阅读器上都极有可能不克不及更新&#xf…

【机器视觉】——裂纹检测笔记

目录 传统算法处理裂缝的基本思路: 第一种思路 第二种思路: 第三种思路 CPP代码 halcon代码 python代码 Matlab代码 深度学习缺陷检测 裂缝检测文献 传统算法处理裂缝的基本思路: 第一种思路 1.先转换彩色图为灰度图 2.进行自适应…

利用union判断系统的大小端

int checkCPUendian()//返回1,为小端;反之,为大端; { union{ unsigned int a; unsigned char b; }c; c.a 1; return 1 c.b; }大端模式(Big-endian),是指数据的高字节保存在内存的低地址中,而数据…

Filter(过滤器) 和 interceptor(拦截器)的区别

Filter(过滤器) 和 interceptor(拦截器)的区别 1.拦截器是基于java反射机制的,而过滤器是基于函数回调的。 2.过滤器依赖于Servlet容器,而拦截器不依赖于Servlet容器。 3.拦截器只对Action请求起作用&#…

ROS探索总结(二)——ROS总体框架

一、 总体结构 根据ROS系统代码的维护者和分布来标示,主要有两大部分:(1)main:核心部分,主要由Willow Garage公司和一些开发者设计、提供以及维护。它提供了一些分布式计算的基本工具,以及整个…

python 阿狸的进阶之路(4)

装饰器 #1、开放封闭原则:对扩展开放,对修改是封闭#2、装饰器:装饰它人的,器指的是任意可调用对象,现在的场景装饰器-》函数,被装饰的对象也是-》函数#原则:1、不修改被装饰对象的源代码 2、不修…

【深度学习】——利用pytorch搭建一个完整的深度学习项目(构建模型、加载数据集、参数配置、训练、模型保存、预测)

目录 一、深度学习项目的基本构成 二、实战(猫狗分类) 1、数据集下载 2、dataset.py文件 3、model.py 4、config.py 5、predict.py 一、深度学习项目的基本构成 一个深度学习模型一般包含以下几个文件: datasets文件夹:存放…