首先说声对不起了!只有10分了!
遇到一个问题!
一个图象处理程序!
打开文件部分是:
Stream stream = new FileStream(fileName, FileMode.Open, FileAccess.Read);
也就是文件流 转 流
现在想在上面加个功能!图象是通过WebServer传回来的!
代码如下:
 [WebMethod]
    public byte[] Show()
    {
        FileStream MyFileStream = File.OpenRead("c\\logo.gif");
        int bdata;
        MemoryStream MyMemoryStream = new MemoryStream();
        while ((bdata = MyFileStream.ReadByte()) != -1)
        {
            MyMemoryStream.WriteByte(((byte)bdata));
        }
        MyFileStream.Close();
        return MyMemoryStream.ToArray();
    }
1。文件流转内存流
2。内存流转数组传到本地
3。本地接收转回内存流
        public static Stream Get(byte[] Image)       //从服务器下载图像
        {
            //MemoryStream MyMemoryStream = new MemoryStream(Image, 0, Image.Length);
            Stream MyStream = new MemoryStream(Image, 0, Image.Length);
            //上面这句试过 但没成功
            return MyStream;
        }
现在就是想在本地直接打开远程传回的图象!

解决方案 »

  1.   

    sample code as follows:
    //Server side
    [WebMethod]
    public byte[] Show()
    {
    FileStream MyFileStream = File.OpenRead("c\\logo.gif");
    byte[] bData = new byte[(int) MyFileStream.Length ];
    MyFileStream.Read( bData, 0, bData.Length );
    MyFileStream.Close();
    return bData;
    }//Client Side
    public static Stream Get(byte[] Image) //从服务器下载图像
    {
    MemoryStream MyMemoryStream = new MemoryStream( Image, true );
    MyMemoryStream.Read( Image, 0, Image.Length );
    MyMemoryStream.Position = 0;
    return MyStream;
    }
      

  2.   

    //Client Side
    public static Stream Get(byte[] Image) //从服务器下载图像
    {
    MemoryStream MyMemoryStream = new MemoryStream( Image, true );
    MyMemoryStream.Read( Image, 0, Image.Length );
    MyMemoryStream.Position = 0;
    return MyStream;
    }
    不行啊!
    你在看看程序!返回的类型你忘记定义了吧!
    不会返回MemoryStream 类型的吧!
      

  3.   

    简单点说就是 MemoryStream  FileStream Stream 这3着之间怎么转换!
    希望能有代码!谢谢大家了!
      

  4.   

    //Client Side
    public static Stream Get(byte[] Image) //从服务器下载图像
    {
    MemoryStream MyMemoryStream = new MemoryStream( Image, true );
    MyMemoryStream.Read( Image, 0, Image.Length );
    MyMemoryStream.Position = 0;
    return MyMemoryStream as Stream;
    }