0
点赞
收藏
分享

微信扫一扫

毕业论文中使用的技术—FileReader接口

用来把文件读入内存,并且读取文件中的数据。

FileReader接口提供了一个异步API,使用该API可以在浏览器主线程中异步访问文件系统,读取文件中的数据

FileReader接口的方法

方法名

参数

描述

readAsBinaryString

file

将文件读取为二进制编码

readAsText

file,[encoding]

将文件读取为文本

readAsDataURL

file

将文件读取为DataURL

abort

(none)

终端读取操作

无论读取成功或失败,方法并不会返回读取结果,这一结果存储在result属性中。

 

FileReader接口的事件

事件

描述

onabort

中断

onerror

出错

onloadstart

开始

onprogress

正在读取

onload

成功读取

onloadend

读取完成,无论成功失败

 

FileReader接口的使用

  1. <p>
  2. <label>请选择一个文件:</label>
  3. <input type="file" id="file" />
  4. <input type="button" value="读取图像" onclick="readAsDataURL()" />  //读取图像
  5. <input type="button" value="读取二进制数据" onclick="readAsBinaryString()" />  //读取二进制数据
  6. <input type="button" value="读取文本文件" onclick="readAsText()" />  //读取文本文件
  7. </p>
  8. <div id="result" name="result"></div>
  9. var result=document.getElementById("result");
  10. var file=document.getElementById("file");

  11. //判断浏览器是否支持FileReader接口
  12. if(typeof FileReader == 'undefined'){
  13. result.InnerHTML="<div>浏览器不支持FileReader接口!</div>";
  14. //使选择控件不可操作
  15. file.setAttribute("disabled","disabled");
  16. }

  17. function readAsDataURL(){
  18. //检验是否为图像文件
  19. file = document.getElementById("file").files[0];
  20. if(!/image\/\w+/.test(file.type)){
  21. alert("看清楚,这个需要图片!");
  22. return false;
  23. }
  24. reader = new FileReader();
  25. //将文件以Data URL形式读入页面
  26. reader.readAsDataURL(file);
  27. reader.onload=function(e){
  28. result=document.getElementById("result");
  29. //显示文件
  30. result.innerHTML='<img src="' + this.result +'" alt="" />';
  31. }
  32. }

  33. function readAsBinaryString(){
  34. file = document.getElementById("file").files[0];
  35. reader = new FileReader();
  36. //将文件以二进制形式读入页面
  37. reader.readAsBinaryString(file);
  38. reader.onload=function(f){
  39. result=document.getElementById("result");
  40. //显示文件
  41. result.innerHTML=this.result;
  42. }
  43. }

  44. function readAsText(){
  45. file = document.getElementById("file").files[0];
  46. reader = new FileReader();
  47. //将文件以文本形式读入页面
  48. reader.readAsText(file);
  49. reader.onload=function(f){
  50. result=document.getElementById("result");
  51. //显示文件
  52. result.innerHTML=this.result;
  53. }
  54. }
  55. </script>



举报

相关推荐

0 条评论