博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ASP.NET 将文件流写入临时文件,并打开
阅读量:6493 次
发布时间:2019-06-24

本文共 1669 字,大约阅读时间需要 5 分钟。

今天遇到一个开发任务,需要调取第三方接口,接口返回Stream文件流(pdf文件),然后供用户打印。

以下是源码:

public void PrintOrderTestForpdf()        {            //1、创建实体            PrintOrderInfo model = new PrintOrderInfo()            {                ApiToken = "XXX",                LabelFormat = "A4_2",                OutPutFormat = "pdf",                PrintCustoms = false,                PrintProduct = false,                PrintProductFormat = "{sku}",                OrderList = new List
() { new PrintOrderDetail() { OrderId="123456",TrackingNo=""} } }; //2、请求接口,并接收返回的文件流 MemoryStream bts = (MemoryStream)RuiYouPaiDal.Instance.PrintOrderForPdf(model); //3、将文件流写去临时的pdf文件,并打开 Process.Start(GererateFileName(bts)); } ///
/// 将接收到的文件流写入临时文件 /// ///
///
public static string GererateFileName(MemoryStream result) { var filename = GetGeneratedFileName();//1、生成.pdf格式的临时文件 var fs = new FileStream(filename, FileMode.OpenOrCreate); var w = new BinaryWriter(fs); w.Write(result.ToArray());//2、将接收到的文件流写入临时文件 fs.Close(); result.Close(); return filename; } ///
/// 生成临时文件 /// ///
public static string GetGeneratedFileName() { var guid = Guid.NewGuid().ToString().Replace("-", ""); var filepath = Path.Combine(Path.GetTempPath(), guid + ".pdf"); return filepath; }

  文件流操作总是易忘,只能经常复习,经常总结了。。。。

转载于:https://www.cnblogs.com/czqbk/p/6566573.html

你可能感兴趣的文章
《梦断代码》读书笔记一
查看>>
C# winform调用类似按钮点击的事件时自带参数该怎么写
查看>>
CCRD_TOC_2007年12月_总第13期
查看>>
测试一个目录下的文件共有多少行
查看>>
1_node.js
查看>>
vue--父子组件传值
查看>>
好的用户界面-界面设计的一些技巧(转)
查看>>
Android--用intent打开各种文件
查看>>
pycharm使用笔记
查看>>
图片压缩技术
查看>>
Exchange企业实战技巧(17)让密件抄送给特定用户
查看>>
我的友情链接
查看>>
我的友情链接
查看>>
varnish学习笔记
查看>>
1.Phaser游戏引擎介绍
查看>>
队列的链式存储结构
查看>>
Linux用户权限管理
查看>>
ifconfig命令总结
查看>>
我的友情链接
查看>>
面试IT公司的见闻
查看>>