一、FileReader介紹
FileReader 物件允許Web應用程式異步讀取存盤在用戶計算機上的檔案(或原始資料緩沖區)的內容,可以使用File物件指定要讀取的檔案,
File物件可以是來自用戶在一個type型別為file的input元素上選擇檔案后回傳的FileList物件,
注意: FileReader僅用于以安全的方式從用戶(遠程)系統讀取檔案內容,它不能用于從檔案系統中直接使用路徑名簡單地讀取檔案,
二、FileReader的使用
FileReader是一個建構式,需要new之后拿到FileReader的實體,
var reader = new FileReader();
實體的方法:
reader.abort():中止讀取操作,
reader.readAsArrayBuffer():讀取完成后,觸發onload事件,result 屬性中保存的是檔案的 ArrayBuffer 資料物件,
reader.readAsDataURL():讀取完成后,觸發onload事件,result屬性中保存的是Base64檔案內容,
reader.readAsText():讀取完成后,觸發onload事件,result屬性中保存的是字串檔案內容,
實體的事件:
reader.onabort:在讀取操作被中斷時觸發,reader.onerror:在讀取操作發生錯誤時觸發,reader.onload:在讀取操作完成時觸發,reader.onloadstart:在讀取操作開始時觸發,reader.onloadend:在讀取操作結束時(要么成功,要么失敗)觸發,
實體的屬性:
reader.error:回傳讀取檔案時的錯誤資訊reader.readyState:表示FileReader狀態的數字,0:還沒有加載;1:正在加載;2:加載完成reader.result:檔案的內容
三、使用范例
obtn.onclick = function(){
var reader = new FileReader();
reader.readAsDataURL(f.files[0]); // 決議成base64格式
reader.onload = function () {
console.log(this.result); // 決議后的資料,如下圖
}
}

obtn.onclick = function(){
var reader = new FileReader();
reader.readAsArrayBuffer(f.files[0]); // 決議成ArrayBuffer格式
reader.onload = function () {
console.log(this.result); // 決議后的資料,如下圖
}
}

obtn.onclick = function(){
var reader = new FileReader();
reader.readAsText(f.files[0]); // 決議成Text格式
reader.onload = function () {
console.log(this.result); // 決議后的資料,如下圖
}
}

以上,如有錯誤,請留言交流…
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/249532.html
標籤:區塊鏈
