HTML 5ローカルファイルFileReader APIインタフェースの読み込み

7799 ワード

1、FileReaderインタフェースの方法
FileReaderインタフェースには4つの方法があり、そのうち3つはファイルの読み取りに使用され、もう1つは読み取りを中断するために使用されます.読み取りに成功しても失敗しても、メソッドは読み取り結果を返さず、resultプロパティに格納されます.
FileReaderインタフェースの方法
メソッド名
パラメータ
説明
readAsBinaryString
file
ファイルをバイナリエンコーディングとして読み込む
readAsText
file,[encoding]
ファイルをテキストとして読み込む
readAsDataURL
file
データURLとしてファイルを読み込む
abort
(none)
端末読取操作
 
 
 
 
 
 
2、FileReaderインタフェースイベント
FileReaderインタフェースには、読み取りファイルの状態をキャプチャするための完全なイベントモデルが含まれています.
FileReaderインタフェースのイベント
≪イベント|Events|ldap≫
説明
onabort
わりこみ
onerror
エラー
onloadstart
スタート
onprogress
読み込み中
onload
読み込みに成功
onloadend
正常な失敗にかかわらず、読み取りが完了しました.
 
 
 
 
 
 
 
 
3、FileReaderインタフェースの使用
1 2 3 4 5 6 // FileReader   if(typeof FileReader == 'undefined'){       result.InnerHTML="< p > FileReader ! p >";       //        file.setAttribute("disabled","disabled"); 
 
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 function readAsDataURL(){       //        var file = document.getElementById("file").files[0];       if(!/image\/\w+/.test(file.type)){           alert(" , !");           return false;            var reader = new FileReader();       // Data URL        reader.readAsDataURL(file);       reader.onload=function(e){           var result=document.getElementById("result");           //            result.innerHTML='< img   src="' + this.result +'" alt="" />';      
  
1 2 3 4 5 6 7 8 9 10 11 function readAsBinaryString(){       var file = document.getElementById("file").files[0];       var reader = new FileReader();       //        reader.readAsBinaryString(file);       reader.onload=function(f){           var result=document.getElementById("result");           //            result.innerHTML=this.result;       }
  
1 2 3 4 5 6 7 8 9 10 11 function readAsText(){       var file = document.getElementById("file").files[0];       var reader = new FileReader();       //        reader.readAsText(file);       reader.onload=function(f){           var result=document.getElementById("result");           //            result.innerHTML=this.result;       }
  
例-demo
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 doctype   html> < html > < head >   < title > title >      < meta   http-equiv="Content-Type" content="text/html; charset=utf-8">      < meta   name="description" content="">      < meta   name="viewport" content="width=device-width, initial-scale=1.0,minimum-scale=1.0, maximum-scale=1.0,user-scalable=no"> head >

< body >     < script >     function readLocalFile () {          //alert("start...");          var localFile = document.getElementById("uploadFile").files[0];          //alert(uploadFile);          //alert(localFile.name);          //alert(localFile.type);          //alert(localFile.size);          var reader = new FileReader();          //Uncaught SyntaxError:Unexpected identifier          var content;          reader.onload = function(event) {              content = event.target.result;              //alert(content);                             document.getElementById("img").src = content;              document.getElementById("fileContent").value = content;          }          reader.onerror = function(event) {           alert('error')              //alert("File could not be read! Code " + event.target.error.code);          }          //reader.readAsText(localFile,"UTF-8");                     content = reader.readAsDataURL(localFile,"UTF-8");          //      }   script >

         < section >          < input   type="file" id="uploadFile" onchange="readLocalFile()";/>          < div >< img   src="" id="img"/> div >                     < div >< textarea   id="fileContent" rows="30" cols="60"> textarea > div >      section >

       body >

html >