Stream stream = httpClient.DownloadData("http://sbcx.saic.gov.cn/trade/pictureservlet3?" + imageUrl[1].Replace("&", "&"));
int streamLength = (int)stream.Length;
byte[] bte = new byte[streamLength];
stream.Read(bte, 6, streamLength-13);
//设置当前流的位置为流的开始
stream.Seek(0, SeekOrigin.Begin);
stream.Close();//////////////////////////////////////////////////
我想把stream前6个字节去掉后7个字节去掉
然后读出来!想直接从stream里面截取!
int streamLength = (int)stream.Length;
byte[] bte = new byte[streamLength];
stream.Read(bte, 6, streamLength-13);
//设置当前流的位置为流的开始
stream.Seek(0, SeekOrigin.Begin);
stream.Close();//////////////////////////////////////////////////
我想把stream前6个字节去掉后7个字节去掉
然后读出来!想直接从stream里面截取!
byte[] bs2 = System.Text.Encoding.UTF8.GetBytes(str);
MemoryStream ms = new MemoryStream(bs2);
byte[] bte = new byte[ms.Length - 13];
ms.Seek(6, SeekOrigin.Begin);// 从第7个开始读取
ms.Read(bte, 0,(int)(ms.Length-13));
string str1 = System.Text.Encoding.ASCII.GetString(bte, 0, bte.Length);
Console.WriteLine(str1);
这里读的时候要注意,小的话这样是可以的,但是如果大文件话,最好每次读一小段,在循环里做判断就可以了
int streamLength = (int)stream.Length;
byte[] bte = new byte[streamLength];
steam.Position = 6;
stream.Read(bte, 0, streamLength-13);
//设置当前流的位置为流的开始
//stream.Seek(0, SeekOrigin.Begin);
stream.Close();你这样试试,我觉得应该可以!
int streamLength = (int)stream.Length;
byte[] bte = new byte[streamLength];
steam.Position = 6;
stream.Read(bte, 0, streamLength-13);
//设置当前流的位置为流的开始
//stream.Seek(0, SeekOrigin.Begin);
stream.Close();
-------------------------------------------------------
完美!