pdf文件流生成pdf文件
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
Code.Login Starr_model = new Code.Login();
Code.InsuranceModel.InsuranceSegment_Result result = new InsuranceModel.InsuranceSegment_Result();
try
{
//判断接口请求是否成功
result = Code.InsuranceDecodeJson.Starr_GetLoginDecodeJson();
if (result.Success == true)
{
string filepath = Server.MapPath("~") + "\\GoldenPalmInsurance\\Code\\Starr.pdf";
string[] RequestArr = { "http://dicc2.ins24.com/ah/pdf_printer/policies/" + policyid + "", "application/pdf" };
//获取PDF文件流
Stream str = Starr_model.Starr_PrinterPDF(RequestArr, result.UserCookie);
StreamReader reader = new StreamReader(str, Encoding.UTF8);
using (FileStream fileStream = new FileStream("" + filepath + "", FileMode.Create, FileAccess.Write))
{
byte[] data = Encoding.UTF8.GetBytes(reader.ToString());
while (true)
{
int size = str.Read(data, , data.Length);
if (size > )
{
fileStream.Write(data, , size);
}
else
{
break;
}
}
}
//这里是你文件在项目中的位置,根目录下就这么写
String FullFileName = filepath;
Response.Clear();
Response.ClearHeaders();
Response.Buffer = false;
Response.ContentType = "application/pdf";
Response.AddHeader("Content-Disposition", "attachment;filename=" + policyid + ".pdf");
Response.WriteFile(FullFileName);
}
}
catch (Exception ex)
{
Response.Write(ex.Message);
}
finally
{
System.Web.HttpContext.Current.Response.Flush();
System.Web.HttpContext.Current.Response.End();
Response.Close();
}
}
}
/// <summary>
///
/// </summary>
/// <param name="args"></param>
/// <param name="UserCookie"></param>
/// <returns></returns>
public Stream Starr_PrinterPDF(String[] args, CookieCollection UserCookie)
{
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(args[]);//将host和参数直接拼接
request.Method = "GET";
request.ContentType = args[];
request.Accept = "*/*";
request.CookieContainer = new CookieContainer(); request.CookieContainer.Add(UserCookie);//设置req的cookie HttpWebResponse response = (HttpWebResponse)request.GetResponse();
Console.WriteLine(((HttpWebResponse)response).StatusDescription);
Stream dataStream = response.GetResponseStream();
return dataStream;
}
导出的PDF文件可以用Adrode reader和福熙阅读器查看,如果出现乱码问题,请下载最新版本的reader软件。
pdf文件流生成pdf文件的更多相关文章
- django生成文件txt、pdf(在生成 PDF 文件之前,需要安装 ReportLab 库)
from django.http import HttpResponse def download_file(request): # Text file #response = HttpRespons ...
- java根据pdf模版动态生成pdf
java根据pdf模版动态生成pdf package com.utils; import java.io.ByteArrayOutputStream; import java.io.File; imp ...
- 利用svn的补丁文件打包生成增量文件
下面的代码是maven版本 1. 创建patch.txt增量文件 保存到 文件目录下 比如 E:\aa\patch.txt 2. 编写java代码 package utils; import java ...
- C++学习47 文件的概念 文件流类与文件流对象 文件的打开与关闭
迄今为止,我们讨论的输入输出是以系统指定的标准设备(输入设备为键盘,输出设备为显示器)为对象的.在实际应用中,常以磁盘文件作为对象.即从磁盘文件读取数据,将数据输出到磁盘文件.磁盘是计算机的外部存储器 ...
- bootstrap 中是通过写less文件来生成css文件,用什么工具来编写呢?
bootstrap 中是通过写less文件来生成css文件,用什么工具来编写呢? 如果用sublime的话如何实现代码保存后浏览器刷新成最新的代码样式? 或者有什么其他好用的工具? 从网上找了很多方法 ...
- 使用Microsoft.Office.Interop.Excel.dll 文件来生成excel 文件
日常工作中经常需要将后台的数据导出成excel 格式,这里通过调用微软提供的类库来生成excel 文件. 具体是引用 了Microsoft.Office.Interop.Excel.dll 类库文件 ...
- 文件参数化-utp框架之根据yaml文件自动生成python文件+utp运行用例
根据yaml文件自动生成python文件 utp框架: bin目录:存放执行文件(run.py) cases目录:存放生成的用例的python文件(该目录下的文件为根据data目录下的测试用例生成的p ...
- iText C# 合并PDF文件流,以及A5变A4时内容默认放在最底下的问题的解决方法;ASP.NET 实现Base64文件流下载PDF
/// <summary> 合併PDF檔(集合) </summary> /// <param name="files">欲合併PDF檔之集合(一 ...
- ASP.NET 实现Base64文件流下载PDF
因为业务需要调用接口获取的是 Base64文件流 需要提供给客户下载PDF文档 源码部分借鉴网上,具体地址忘记了. //Base64文件流 byte[] buffer = Convert.FromBa ...
随机推荐
- Call me, maybe?
Hey, I just met you, and this is crazy, but here's my number so call me, maybe? @Test public void te ...
- java实现简单的素数判断
素数的这个问题由来已久,大学刚接触语言的时候遇到过找素数的问题,找工作笔试的时候也遇到过素数的问题,今天就特地写这篇博文,缅怀一下. 一.什么是素数? 除了1和它本身以外不再有其他的除数整除. 二.判 ...
- Laravel入门笔记
Laravel 是一款简洁,优雅的一款框架,可以说是入门TP后的第二款可以选择的框架. 目录部分: app -> 自己写的代码 http -> Controller -> 控制器 b ...
- centos6.5下Python IDE开发环境搭建
自由不是想做什么就做什么,而是想不做什么就不做什么. ---摘抄于2016/11/30晚 之前学习了一段时间的Python,但所有部署都在windows上.正赶上最近在学习liux,以后 ...
- 【SQL】导出表数据到Excel中
打开数据库之后点击新建表查询: ------------------------------------------------------------------------------------ ...
- 深入Mysql 导入导出
mysql常用导出数据命令:1.mysql导出整个数据库 mysqldump -hhostname -uusername -ppassword databasename > backupfil ...
- C# WebService的简单和复杂参数类型和结果的JSON格式
Jquery作为一款优秀的JS框架,简单易用的特性就不必说了.在实际的开发过程中,使用JQ的AJAX函数调用WebService 的接口实现AJAX的功能也成了一种比较普遍的技术手段了.WebServ ...
- IE自动化
自动打开www.baidu.com,并搜索关键字“abcd” #定义函数:等待页面打开 function WaitForLoad($ie) { sleep 2 do {Sleep -Mi 200} w ...
- 最小投票BZOJ 1934([Shoi2007]Vote 善意的投票-最小割)
上班之余抽点时间出来写写博文,希望对新接触的朋友有帮助.今天在这里和大家一起学习一下最小投票 1934: [Shoi2007]Vote 好心的投票 Time Limit: 1 Sec Memory L ...
- 关于2000W数据
前几天在博客园首页看到这个2000W数据的消息,刚好这个学期正在SQL入门,加上好奇心的驱使,把这个下载下来. 一个是600多M的CSV文件,还有一个是1.7G的SQL Server的备份文件,解压后 ...