Blob物件和FileReader介面

2021-07-14 19:46:21 字數 1182 閱讀 5992

它表示二進位制原始資料,提供乙個slice方法,可以通過該方法訪問到位元組內部的原始資料快,file物件也繼承了這個blob物件

它有兩個屬性1.size屬性:表示乙個blob物件的長度     2.type屬性:表示blob的mime型別,如果是未知型別,則返回乙個空字串

blob物件使用示例

選擇檔案

檔案位元組長度:

檔案型別:

對於影象型別的檔案,blob物件的type屬性都是以"image/"開頭的,利用這個特性可以判斷使用者選擇的檔案是否是影象型別的

主要用來把檔案讀入記憶體,並且讀取檔案中的資料,它提供了乙個非同步api,使用這個非同步api可以在瀏覽器主線程中非同步訪問檔案系統,讀取檔案中的資料

1.介面的方法:

它有四個介面的方法,其中三個用來讀取檔案,另乙個用來讀取過程中斷,無論讀取成功或者失敗,方法不會返回讀取結果,這個結果儲存在result屬性中

a.readastext:該方法有兩個引數,第二個引數是文字的編碼方式,預設值為utf-8,即將檔案以文字方式讀取,讀取的結果即是這個文字檔案中的內容

b.readasdatastring:這個方法將檔案讀取為二進位制字串,通常將它傳送到後端,後端可以通過這段字串儲存檔案

c.readasdataurl:該方法將檔案讀取為一串data url字串,事實上是將小檔案以一種特殊格式的url位址形式直接讀入頁面,這裡的小檔案通常指的是影象和html等格式的檔案。

2.介面的事件:

onabort                            資料讀取中斷時觸發

onerror                            資料讀取出錯時觸發

onloadstart                      資料讀取開始時觸發

onprogress                      資料讀取中

onload                             資料讀取成功完成時觸發

onloadend                      資料讀取完成時觸發,無論成功或者失敗

3.filereader方法示例

請選擇乙個檔案:

請注意:**filereader物件讀取到的資料都儲存在了result屬性中

filereader物件的事件先後順序:

blob物件轉blob位址 BLOB(不是電影!)

blob物件轉blob位址 在thescripts此處提出的所有問題中,出現頻率最高的乙個問題與access中圖形影象的儲存有關。基本上有三種可用於在access中操作影象檔案的技術,它們是 將影象儲存在ole物件欄位中,並將其顯示在繫結物件框中。影象可以鏈結或嵌入。將影象的路徑儲存在文字欄位中,並...

PHP mysql 插入Blob物件

工作中碰到了,最近改一些php,要在mysql中插入乙個blob物件 從file中讀取資訊,存入資料庫 在html中用的是,file型別的input 在php中使用 files filename files好像被取消,不知道為什麼還要用?原來就是這麼寫的。完全不知道 files怎麼回事,但是知道是個...

JSON傳遞BLOB物件

最近看到瀏覽器有個getusermedia api可以獲得攝像頭,麥克風採集的資料,就想結合websocket做個語音聊天室玩玩。但是得到的blob物件怎麼放在json裡傳回去對我來說實在是個坑 最後採用把blob用filereader的readasdataurl轉成base64格式傳輸,再轉回bl...