成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

HTML 5中的文件處理之File Writer API

開發 前端
這里是介紹HTML5文件處理的第二部分,之前已經介紹過了基礎的FileAPI,接下來是如何通過JS創造文件的部分。我們稱之為FileWriterAPI。

這里是介紹HTML5文件處理的第二部分,之前已經介紹過了基礎的FileAPI,接下來是如何通過JS創造文件的部分。我們稱之為FileWriterAPI

需要提前解釋的是,FileWriterAPI不是一個可以“獨立”存在的規范,它強烈的依賴于FileAPI和即將介紹的FileSystemAPI。FileAPI是最基礎的接口這毋庸置疑,而之所以先于FileSystemAPI介紹FileWriterAPI,是因為FileSystemAPI是一套更龐大的接口設計集合,FileWriterAPI相比之下相對簡單,可以算作是FileSystemAPI也用得到的一部分基礎,提前介紹給大家。

總覽

這部分一共有三大接口:

* BlobBuilder接口:創建Blob

* FileSaver接口:提供一些列方法和事件監聽方式,代表一個保存文件的過程

* FileWriter接口:是從FileSaver擴展來的,提供更豐富的輸出選擇

需要注意的是,FileSaver和FileWriter是不能通過接口指定要保存或要寫入的文件的,它們都是對象創建時就已經確定的并且不可更改。同時FileSaver更是不提供控制寫入什么內容的接口,要寫入的內容也是對象創建時就已經確定的并且不可更改的;而FileWriter可以通過接口控制要寫入的內容。

接口描述

同樣的,這3個接口其實并不復雜,也很好理解(同樣的,接口中的“#Foo”表示任意Foo類型的對象):

BlobBuilder接口

  1. #BlobBuilder.getBlob([contentType]) // 返回目前已放入的所有Blob數據構成的對象  
  2. #BlobBuilder.append(text[, contentType]) // 放入文本數據  
  3. #BlobBuilder.append(data) // 放入數據(Blob或ArrayBugger) 

FileSaver接口

  1. #FileSaver.abort() // 中斷保存操作  
  2. #FileSaver.readyState // 保存工作的狀態(DONE、INIT、WRITING)  
  3. #FileSaver.error // 最后一次出錯的錯誤信息  
  4. #FileSaver.onwritestart // 寫入操作開始時觸發  
  5. #FileSaver.onwrite // 寫入操作成功時觸發  
  6. #FileSaver.onwriteend // 寫入操作完成時觸發(不管成功還是失敗)  
  7. #FileSaver.onprogress // 寫入操作過程中觸發  
  8. #FileSaver.onabort // 寫入操作被中斷時觸發  
  9. #FileSaver.onerror // 寫入操作失敗時觸發 

FileWriter接口

  1. #FileWriter.position // 當前寫入操作所處的位置  
  2. #FileWriter.length // 文件長度(或在無權讀取文件信息的情況下返回已寫入的長度)  
  3. #FileWriter.write(blob) // 在position處寫入blob數據  
  4. #FileWriter.seek(offset) // 設置position屬性為offset  
  5. #FileWriter.truncate(size) // 在size處截斷文件  
  6. #FileWriter.abort() // 繼承自FileSaver  
  7. #FileWriter.readyState // 繼承自FileSaver  
  8. #FileWriter.error // 繼承自FileSaver  
  9. #FileWriter.onwritestart // 繼承自FileSaver  
  10. #FileWriter.onwrite // 繼承自FileSaver  
  11. #FileWriter.onwriteend // 繼承自FileSaver  
  12. #FileWriter.onprogress // 繼承自FileSaver  
  13. #FileWriter.onabort // 繼承自FileSaver  
  14. #FileWriter.onerror // 繼承自FileSaver 

代碼示例

舉例一:創建Blob對象

  1. var blobBuilder = new BlobBuilder(); // 創建BlobBuilder對象  
  2. blobBuilder.append("我今天只說三句話;"); // 連續放入文本  
  3. blobBuilder.append("包括這一句;");  
  4. blobBuilder.append("我的話完了。");  
  5.  
  6. var url = window.URL.createObjectURL(blobBuilder.getBlob()); // 返回Blob對象并以此創建URL  
  7. window.open(url); // 通過URL打開這個Blob對象 

舉例二:使用FileWriter

  1. fileEntry.createWriter(function (fileWriter) {  
  2.     fileWriter.write(blobBuilder.getBlob()); // 返回Blob對象并通過fileWriter寫入  
  3.     fileWriter.onwriteend = function () {...}; // 綁定寫入操作完成后的事件  
  4. }); 

這里需要注意的是:

1.在不同的瀏覽器下,BlobBuilder和window.URL依然存在著不同的前綴,比如webkit下的接口分別為WebKitBlobBuilder和webkitURL;

2.這里出現了一個陌生的對象fileEntry和陌生的方法createWriter,這正是接下來要介紹的一套比較復雜的API:FileSystemAPI的一部分內容。想弄清楚fileWriter具體運行的環境,還得繼續學習,不過拋開外部環境的形成過程,fileWriter的用法應該可以體會到了;

3.FileSaver還沒有用得到的地方,畢竟標準還沒有最終形成,也許他將來某一天,借助其它規范的優勢,搖身一變,就用在“另存為對話框”之類的地方了。

以上就是對FileWriterAPI的介紹,緊接著就是FileSystemAPI了,屆時HTML5所有文件操作的神秘面紗都會被揭開。

原文:http://bulaoge.net/topic.blg?dmn=g3g4&tid=2356045

【編輯推薦】

  1. HTML 5中的文件處理之FileAPI
  2. 淺析IndexedDB存數結構
  3. IndexedDB的JS接口設計詳解
  4. 調試IndexedDB應用程序
  5. 基于Firefox 10的IndexedDB實例演示
責任編輯:陳貽新 來源: 趙錦江的博客
相關推薦

2012-02-23 10:32:19

HTML 5

2010-09-03 08:58:01

HTML 5

2011-07-14 09:16:10

HTML 5

2012-01-04 09:42:40

HTML 5

2010-01-29 09:00:48

HTML5 File 文件拖放上傳

2012-11-05 10:34:52

IBMdw

2015-10-27 10:22:47

Html5API調用

2023-10-07 09:08:32

Golangbufio

2013-01-04 13:39:51

2013-01-18 10:59:44

IBMdW

2012-06-04 10:16:18

HTML5

2011-05-13 17:36:05

HTML

2011-04-11 10:14:47

HTML 5

2011-08-29 10:49:22

2014-08-28 10:16:17

HTML5

2017-08-09 15:57:11

JavaScriptHtml5音頻

2025-05-19 07:34:42

File客戶端存儲

2012-05-23 13:00:37

HTML5

2012-05-02 10:28:16

HTML5

2011-11-23 09:11:36

API
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产福利91精品一区二区三区 | 亚洲色欧美另类 | 九一视频在线播放 | 久久久在线视频 | 成人综合视频在线 | 亚洲国产精品99久久久久久久久 | 成年人国产在线观看 | 欧美精品一区二区三区蜜桃视频 | 一级做a爰片久久毛片免费看 | 亚洲一区二区视频 | 99国产欧美| 午夜精品福利视频 | 91国自产 | 视频在线一区二区 | 午夜精品一区 | 久久精品国产一区二区电影 | 亚洲精品乱码久久久久久黑人 | 欧美一区二区三区在线观看 | 一级全黄视频 | 国产精品18hdxxxⅹ在线 | 一级片在线观看视频 | 人人鲁人人莫人人爱精品 | 成人免费观看男女羞羞视频 | 国产香蕉视频在线播放 | 亚洲欧美精品久久 | 日本免费一区二区三区四区 | 精品国产久| 色综合99| 亚洲精品自在在线观看 | 日韩精品 电影一区 亚洲 | 最新免费av网站 | 中文字幕 在线观看 | 久久久久久久久久爱 | 日韩一区二区三区视频在线观看 | 九九亚洲 | 午夜精品久久久久久久久久久久 | 成人精品一区二区三区中文字幕 | 欧美激情一区二区 | 欧美综合久久久 | 久久久国产一区二区三区 | 精品久久国产 |