zoukankan      html  css  js  c++  java
  • HTML5 读取上传文件(转载)

    另参考 http://www.jianshu.com/p/46e6e03a0d53

    1 filelist对象与file对象:

    <input type="file" id="file" multiple>     //multiple可上传多个文件
    <input type="button" onclick="showFileName()" value="文件上传">
    <script>
    function showFileName(){
          var file;       //创建file对象
          for(var i;i<document.getElementById("file").files.length;i++){
              file = document.getElementById('file').files[i];   //.files
              console.log(file.name);
           }
    }
    </script>

    2 Blob对象:表示原始的二进制数据,file继承自blob。

    • 其属性1:size 表示文件大小 
    • 属性2:type 表示文件类型  如image/png
    var file;
    file = document.getElementById("file").files[0];
    file.size;     //当前上传文件的大小
    file.type;  

    3 Filereader对象
    包含5个对象:

    • readAsBinaryString    将文件数据读取为二进制数据字符串
    • readAsText   将文件数据读取为文本数据
    • readAsDataURL   图像路径
    • readArrayBuffer  
    • abort       中断


    6个事件:

    • onabord     
    • onerror   
    • onloadstart    
    • onload     
    • onloadend
    • onprogress 监听进度
    <input type="file" id="file">
    <input type='button' value='读取图像‘ onclick='readAsDataURL()'>
    <input type='button' value=读取二进制’ onclick=''>
    <input type='button value='读取文本文件‘ onclick=''>
    <div id='result' name='result>
    <script>
    var result = document.getElementById('result');
    var file = document.getElementById('file');
    
    function readAsDataURL(){
             var  file = document.getElementById('file').files[0];
             var reader  = new FileReader();  //创建filereader对象
             reader.readAsDataURL(file);       //读取图片文件
             reader.onload = function(ofile){
                  var resultimg = document.getElementById('result');
                  resultimg.innerHTML = '<img src="'+ofile.target.result+'"+alt="">';
             }
    }
    
    function readAsText(){
               var file = document.getElementById('file').files[0];
               var reader = new FileReader();
               reader.readAsText(file);   //读取文本内容
               reader.onload = function(e){
                    var resulttxt = document.getElementById('result');
                    resulttxt.innerHTML = e.target.result;
               }
    }
    </script>

    原文链接

  • 相关阅读:
    阿米巴
    linux系统和依赖包常用下载地址
    chm格式文件能打开,但看不到内容问题
    云计算的三层SPI模型
    云计算相关的一些概念Baas、Saas、Iaas、Paas
    IOS 开发环境,证书和授权文件等详解
    Android MDM参考
    理解RESTful架构
    联想小新Air2020锐龙版在Ubuntu下添加指纹识别
    避免踩坑,这才是为知笔记导入印象笔记数据的正确姿势
  • 原文地址:https://www.cnblogs.com/OpenCoder/p/10347426.html
Copyright © 2011-2022 走看看