asp.net File,FileStream,byte應用轉換

來源:互聯網
上載者:User

asp教程.net file,filestream,byte應用轉換

file>>>filestream (2種方式)
方式1:
filestream fs1 = file.open ( @"d:集團通知.jpg" , filemode.open );
方式2:
filestream fs2 = new filestream ( @"d:通知.jpg" , filemode.open );

filestream>>>byte[]
byte [ ] b1 = new byte [ fs1.length ];
fs1.read ( b1 , 0 , b1.length );

把檔案儲存到資料庫教程中一般是file>>>filestream>>>byte[]

byte[]>>>file(2種方式)
假設byte[ ] b1裡面有資料
方式1:
file.writeallbytes ( @"d:通知b2.jpg" , b1 );
方式2:
filestream fs = new filestream ( @"d:通知b_2.jpg" , filemode.openorcreate , fileaccess.write );
fs.write ( b1 , 0 , b1.length );
fs.close ( );

filestream>>>filestream
有時需要把檔案流寫到ftp的請求流中,實際上是利用byte[]做了一個緩衝區

stream requeststream = uploadrequest.getrequeststream ( );
filestream filestream =  file.open ( @"d:abc.txt" , filemode.open );

byte [ ] buffer = new byte [ 1024 ];
int bytesread;
while ( true )
{
bytesread = filestream.read ( buffer , 0 , buffer.length );
if ( bytesread == 0 )
break;
requeststream.write ( buffer , 0 , bytesread );
}

轉換到filestream byte() array throws outofmemoryexception

'open the filestream data file for writing
      dim fs as new sqlfilestream(filepath, txcontext, fileaccess.write)

      'open the source file for reading
      dim localfile as new filestream("c:tempmicrosoftmouse.jpg",
                      filemode.open,
                      fileaccess.read)

      'start transferring data from the source file to filestream data file
      dim bw as new binarywriter(fs)
      const buffersize as integer = 4096
      dim buffer as byte() = new byte(buffersize) {}
      dim bytes as integer = localfile.read(buffer, 0, buffersize)

      while bytes > 0
        bw.write(buffer, 0, bytes)
        bw.flush()
        bytes = localfile.read(buffer, 0, buffersize)
      end while

      'close the files
      bw.close()
      localfile.close()
      fs.close()

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.