public static Stream sss(Stream inStream)
{
//把instream转成MemoryStream}

解决方案 »

  1.   

    应该可以直接转,MemoryStream继承stream的。
    MemoryStream ss = inStream as MemoryStream;
      

  2.   

    流对象这样转换的话,
    MemoryStream ss = inStream as MemoryStream;
    ss = null,无法得到inStream流
    你可以测试下
      

  3.   

    c#写法:
    MemoryStream ss = new MemoryStream(inStream);
      

  4.   

    不可能直接转的,需要从Stream把数据读出来,写入MemoryStream。MemoryStream ms = new MemoryStream();
    byte[] buffer = new byte[1024];while(true) {
        int sz = inStream.Read(buffer, 0, 1024);
        if (sz == 0) break;
        ms.Write(buffer, 0, sz);
    }
    ms.Position = 0;
    return ms;
      

  5.   

    Stream 是抽象的
    而MemoryStream 是继承Stream的
    如果 你的inStream是通过MemoryStream创建(或转化)的话是可以的,但是要inStream是别的类型流的话就不行了
    在函数中加上
    if(inStream is MemoryStream)
    {
        MemoryStream ss = inStream as MemoryStream;
    }
    else
    {
        throw new Exception(ms.GetType().ToString());
    }