• HTML5文件读取


    我们想: 可以吧上传的文件,内容显示到页面? 或者 上传完毕图片显示缩略图到页面上。
    通过FileReader对象我们可以读取本地存储的文件,使用 File 对象来指定所要读取的文件或数据。其中File对象可以是来自用户在一个 元素上选择文件后返回的FileList 对象,也可以来自由拖放操作生成的 DataTransfer
    3.1 Files对象
    由于HTML5中我们可以通过为表单元素添加multiple属性,因此我们通过上传文件后得到的是一个Files对象(伪数组形式)。
    3.2FileReader对象
    HTML5新增内建对象,可以读取本地文件内容。var reader = new FileReader; 可以实例化一个对象
    实例方法
    1、readAsDataURL() 以DataURL形式读取文件
    事件监听
    onload 当文读取完成时调用
    属性
    result 文件读取结果
    生成缩略图

    <!DOCTYPE html>
    <html lang="en">
    <head>
     <meta charset="UTF-8">
     <title>Document</title>
    </head>
    <body>
     <input type="file" name="" id="" multiple > 
     <img src="" alt="" width="100">
     <script>
     // 我们想:  可以吧上传的文件,内容显示到页面?  或者 上传完毕图片显示缩略图到页面上。。。
     // 1. 上传我们的文件  借助于 文件域  input file 
     //
     var file = document.querySelector("input");
     var img = document.querySelector("img");
     file.onchange = function() { //  onchange 当发生改变的时候   下拉菜单 select 也是这个事件
      // console.log("选择了文件");
      // console.log(file); 
      // for( var k in file) {
      //  console.log( k + "~~~~" + file[k]);
      // }
      console.log(this.files);   // 上传文件的集合 可以是一个文件也可以是很多
      // 2. 选择我们要的文件, 进行 读取  fileReader  文件里面的内容
      // 初始化了一个 reader 对象 
      var reader = new FileReader();  
       // reader.readAsText(文件对象);
       // 读取 this.files[0] 文件里面的内容
       reader.readAsDataURL(this.files[0]);  
        // 当这个文件的内容读取完毕之后 ,会把内容存放到  result里面    
        // 3. 把读取的内容显示到 页面中..
        // reader 已经读取完毕 而且读取的内容 存放到了  result里面了 
        reader.onload = function() {
          // console.log(this.result);
          // 把生成的内容 赋值给 图片 src  
          img.src = this.result;
        }  
     }
     </script>
    </body>
    </html>

    显示记事本内容

    <!DOCTYPE html>
    <html lang="en">
    <head>
     <meta charset="UTF-8">
     <title>Document</title>
    </head>
    <body>
     <input type="file" name="" id="" multiple > 
     <div></div>
     <script>
     // 我们想:  可以吧上传的文件,内容显示到页面?  或者 上传完毕图片显示缩略图到页面上。。。
     // 1. 上传我们的文件  借助于 文件域  input file 
     //
     var file = document.querySelector("input");
     var div = document.querySelector("div");
     file.onchange = function() { //  onchange 当发生改变的时候   下拉菜单 select 也是这个事件
      // console.log("选择了文件");
      // console.log(file); 
      // for( var k in file) {
      //  console.log( k + "~~~~" + file[k]);
      // }
      console.log(this.files);   // 上传文件的集合 可以是一个文件也可以是很多
      // 2. 选择我们要的文件, 进行 读取  fileReader  文件里面的内容
      // 初始化了一个 reader 对象 
      var reader = new FileReader();  
       // reader.readAsText(文件对象);
       // 读取 this.files[0] 文件里面的内容
       reader.readAsText(this.files[0]);  
        // 当这个文件的内容读取完毕之后 ,会把内容存放到  result里面    
        // 3. 把读取的内容显示到 页面中..
        // reader 已经读取完毕 而且读取的内容 存放到了  result里面了 
        reader.onload = function() {
          div.innerHTML = this.result;
        }   
     }
     </script>
    </body>
    </html>
    别废话,拿你代码给我看。
  • 相关阅读:
    Exception in thread "main" java.lang.NoClassDefFoundError: com/google/common/base/Function问题解决
    Fiddler是最强大最好用的Web调试工具之一--网站抓包分析
    django 运行不同的settings
    Ununtu 15.04 安装MySql(Django连接Mysql)
    Linux SSH登录服务器报ECDSA host key "ip地址" for has changed and you have requested strict checking.错误
    解决将Ubuntu下导出的requirements.txt到Centos服务器上面出现pkg-resource的版本为0.0.0
    Ubuntu安装Nginx和正确卸载Nginx Nginx相关
    jquery 情况form表单的所有内容
    python把中文文档变为拼音
    将多个文件夹内的txt合并
  • 原文地址:https://www.cnblogs.com/lvxueyang/p/13707459.html
Copyright © 2020-2023  润新知