byte[] 和 stream 转换问题!
string sPath = "C:\\Documents and Settings\\Administrator\\My Documents\\My Pictures\\82501.jpg ";
FileStream fStream = new FileStream(sPath,FileMode.Open);
long iLen = fStream.Length;
byte[] bts = new byte[iLen] ;
fStream.Write(bts,0,bts.Length);
Stream stream = new MemoryStream(bts,0,bts.Length);
请高手指教一下,上面这种方式把一个Stream转换成byte[]再转换成Stream对不对?
如果对的话,那么再执行下面的步骤怎么就会出错?
Image image = Image.FromStream(stream);
这中间是不是有什么问题啊?多谢了!
------解决方案--------------------long iLen = fStream.Length;
byte[] bts = new byte[iLen] ;
这个时候你的bts数组中是空的,什么都没有写入,只是定义了数组的长度。
然后你fStream.Write(bts,0,bts.Length);
你什么都没有写入进去,淡然会出错了。
你需要一个读写器进行读写