成人免费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

2023-10-07 09:08:32

Golangbufio

2015-10-27 10:22:47

Html5API調用

2013-01-04 13:39:51

2012-06-04 10:16:18

HTML5

2013-01-18 10:59:44

IBMdW

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-02 10:28:16

HTML5

2012-05-23 13:00:37

HTML5

2011-11-23 09:11:36

API
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国精日本亚洲欧州国产中文久久 | 国产免费一区 | 69福利影院 | 365夜爽爽欧美性午夜免费视频 | 欧美精品一区二区三区在线播放 | 四虎影院在线观看av | 日本黄色一级片视频 | 91视频在线网站 | 高清成人av | 亚洲电影成人 | www久久久| 久草精品在线 | 日韩免费1区二区电影 | 国产精品18久久久 | 国产精品毛片久久久久久久 | www国产亚洲精品久久网站 | 免费激情网站 | 国产精品观看 | 久久久久久久久99 | 美女艹b | 亚洲美女网站 | 在线视频中文字幕 | 久久伊| 日韩在线免费观看视频 | 国产精品永久在线观看 | 亚洲女人天堂网 | 国产高清视频在线观看 | 欧美xxxx在线| 国产精品一区一区 | 国产福利在线小视频 | 国产精品地址 | 怡红院成人在线视频 | 久久一区精品 | 天天干免费视频 | 91精品国产91久久综合桃花 | 国产亚洲精品一区二区三区 | 欧美日韩一 | 午夜影院免费体验区 | 国产在线对白 | 国产成人99久久亚洲综合精品 | 性一交一乱一透一a级 |