oFiles[1]是一个httppostfile对象byte[] b = new byte[oFiles[1].ContentLength]; //下面这两句诗作什么用的,我看了介绍也没看明白
System.IO.Stream fs = (System.IO.Stream)oFiles[1].InputStream; 
fs.Read(b, 0, oFiles[1].ContentLength);然后进行调用
o.TestUploadFile(b);问题如上:
System.IO.Stream fs = (System.IO.Stream)oFiles[1].InputStream; 
fs.Read(b, 0, oFiles[1].ContentLength);这两句的作用什么呢
如果我在之前对二进制数组byte[] b进行了压缩,返回一个新的byte[] bb
如下
byte[] b = new byte[oFiles[1].ContentLength]; 
byte[] bb = 压缩方法(b);然后下面的那两句话该怎么写呢,尤其是System.IO.Stream)oFiles[1].InputStream
这里。那个对象已经被压缩了,不可能还生成源文件的流文件阿这两句到底是干什么的我没太懂,如果我队之前的文件进行了压缩接下来该如何改正呢?
谢谢前辈们。

解决方案 »

  1.   

    //下面这两句诗作什么用的,我看了介绍也没看明白 
    System.IO.Stream   fs   =   (System.IO.Stream)oFiles[1].InputStream;   
    fs.Read(b,   0,   oFiles[1].ContentLength); 第一句就是用fs表示oFiles[1].InputStream第二句是把fs的值读到b中这个的目的应该是压缩方法只接受Byte数组吧
      

  2.   

    System.IO.Stream   fs   =   (System.IO.Stream)oFiles[1].InputStream;   
    fs.Read(b,   0,   oFiles[1].ContentLength); 
    -----------------------
    此行代碼,多此一舉,HttpPostedFile.InputStream本身就是Stream.所以沒有必須做類型轉換。
    直接使用oFiles[1].InputStream.Read(b,   0,   oFiles[1].ContentLength);即可
      

  3.   

    前辈们
    我前面已经对这个文件转化后的二进制数组进行压缩了下面就不是b而是bb了。
    System.IO.Stream  fs  = (System.IO.Stream)oFiles[1].InputStream;       
    fs.Read(b,  0,  oFiles[1].ContentLength);   这样就不能再把fs读到b中了因为下面传得参数也变成了bb而不是b,所以这一步该如何读写呢
      

  4.   

    byte[]   b   =   new   byte[oFiles[1].ContentLength];   
    byte[]   bb   =   压缩方法(b); 
    --------------------------
    b字節數組都沒有東西,你壓縮什么??
    再怎么樣,也得先將b讀取了文件內容,你再壓縮啊
    如下:
    byte[]   b   =   new   byte[oFiles[1].ContentLength];   
    oFiles[1].InputStream.Read(b,0,oFiles[1].ContentLength); 
    byte[]   bb   =   压缩方法(b);
    o.TestUploadFile(bb); 
     
      

  5.   

    恩我做了修改
    byte[]   b   =   new   byte[oFiles[1].ContentLength];   System.IO.Stream   fs   =   (System.IO.Stream)oFiles[1].InputStream;   
    fs.Read(b,   0,   oFiles[1].ContentLength); 然后再压缩
    byte[]   bb   =   压缩方法(b); 然后再进行调用,可是发现解压缩以后图片不完整,文本是乱码可是解压缩前后的字节是正确的,压缩前和解压缩后的字节能对应上,这大概是哪里出了问题呢