Memory stream is not expandable
发现项目有一个地方在做图片缩放剪切的一个操作中。碰到有一些特殊的图片会报
Memory stream is not expandable 的错误
跟踪的时候发现是 由方法 originalStream.SetLength()引起的。
某些情况下原图片的长度会小于新的图片长度 (size还比原来小的情况下,很特殊的图片。)
把
var originalStream = new MemoryStream(ProviderManager.FileStorage.LoadFile(OriginalPath))) 变成
var originalStream = new MemoryStream()
var buffer = ProviderManager.FileStorage.LoadFile(OriginalPath);
originalStream.Write(buffer,0,buffer.Length);
可解决。
Memory stream is not expandable的更多相关文章
- 你真的了解字典(Dictionary)吗?  C# Memory Cache 踩坑记录  .net 泛型  结构化CSS设计思维  WinForm POST上传与后台接收  高效实用的.NET开源项目  .net 笔试面试总结(3)  .net 笔试面试总结(2)  依赖注入  C# RSA 加密  C#与Java AES 加密解密
		你真的了解字典(Dictionary)吗? 从一道亲身经历的面试题说起 半年前,我参加我现在所在公司的面试,面试官给了一道题,说有一个Y形的链表,知道起始节点,找出交叉节点.为了便于描述,我把上面 ... 
- [C#]MemoryStream.Dispose之后,为什么仍可以ToArray()?
		目录 概述 MemoryStream分析 总结 概述 事件起因,一哥们在群里面贴出了类似下面这样的一段代码: class Program { static void Main(string[] arg ... 
- GPU端到端目标检测YOLOV3全过程(上)
		GPU端到端目标检测YOLOV3全过程(上) Basic Parameters: Video: mp4, webM, avi Picture: jpg, png, gif, bmp Text: doc ... 
- 【原创分享·支付宝支付】HBuilder打包APP调用支付宝客户端支付
		前言 最近有点空余时间,所以,就研究了一下APP支付.前面很早就搞完APP的微信支付了,但是由于时间上和应用上的情况,支付宝一直没空去研究.然后等我空了的时候,发现支付宝居然升级了支付逻辑,虽然目前还 ... 
- 在Linux和Windows平台上操作MemoryMappedFile(简称MMF)
		操作系统很早就开始使用内存映射文件(Memory Mapped File)来作为进程间的共享存储区,这是一种非常高效的进程通讯手段..NET 4.0新增加了一个System.IO. MemoryMap ... 
- .net(c#)版RSA加密算法,拿走不谢
		今天有同学对接一个支付平台,涉及到RSA的签名和验签.由于对方是java的sdk,翻成c#语言时,搞了半天也没搞定.网上搜的东西都是各种copy还不解决问题. 碰巧,我之前对接过连连银通的网银支付和代 ... 
- c#文件操作
		1.创建文件夹 //using System.IO; Directory.CreateDirectory(%%1); 2.创建文件 //using System.IO; File.Create(% ... 
- 兼容javascript和C#的RSA加密解密算法,对web提交的数据进行加密传输
		Web应用中往往涉及到敏感的数据,由于HTTP协议以明文的形式与服务器进行交互,因此可以通过截获请求的数据包进行分析来盗取有用的信息.虽然https可以对传输的数据进行加密,但是必须要申请证书(一般都 ... 
- C# RSA加密解密
		1.解析密钥 /// <summary> /// 把二进制密钥解析成RSACryptoServiceProvider /// </summary> /// <param ... 
随机推荐
- day27 CRM delete& action& 嵌入CRM
			课程目录:deleteactionpop up window嵌入crm项目 权限(未讲)学员交作业发邮件 代码路径:https://github.com/liyongsan/git_class/tre ... 
- 【Python】测算代码运行时间
			整理自这里和这里 timeit模块 timeit模块定义了接受两个参数的 Timer 类.两个参数都是字符串. 第一个参数是你要计时的语句或者函数. 传递给 Timer 的第二个参数是为第一个参数语句 ... 
- Linux下记录所有用户的登录和操作日志
			Linux下记录所有用户的登录和操作日志 一般我们可以用history命令来查看用户的操作记录,但是这个命令不能记录是哪个用户登录操作的,也不能记录详细的操作时间,且不完整:所以误操作而造成重要的 ... 
- Linux:LAMP搭建DISCU!论坛
			LAMP搭建DISCU!论坛 试验机为centos6.8 i686 应用的包 mysql-5.1.73-linux-i686-glibc23.tar.gz httpd-2.2.24.tar.bz2 p ... 
- Makefile特殊标签
			http://www.gnu.org/software/make/manual/html_node/Special-Targets.html 
- Jenkins自动构建VS的代码20150607
			1. 安装Jenkins Ø 双击安装即可,如果需要,可以配置环境变量(一般没设置) Ø 在浏览器中输入:http://localhost:8080/打开jekins,及完成jenkins安装 Ø 如 ... 
- 单一功能学习——百度AI之身份证识别
			以下内容基本是从官方接口文档复制过来的,附带自己封装的代码 时间:2018年4月4日 一.导入工具包 使用maven依赖: <dependency> <groupId>com. ... 
- python使用progressbar显示进度条
			progressbar安装: pip install progressbar 用法一 # -*- coding=utf-8 -*- import time from progressbar impor ... 
- xshell连接及优化
			xshell 连接 问题:当你的xshell与服务器连接不上时 1:可先排查道路通不通 正常: 不正常: 1:查看服务器ip正不正确 2:vmware 编辑-虚拟网络编辑器 3:windows服务 ... 
- Git学习的网址
			http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000 https://github.co ... 
