HTML5 文件域+FileReader 读取文件(二)

1、读取文本文件内容,指定字符编码html

<div class="container">
    <!--文本文件验证-->
    <input type="file" id="file" multiple accept="text/plain" />
    <input type="button" id="btn1" value="读取文件内容" onclick="showFiles();" />
    <h4>选择文件以下:</h4>
    <blockquote></blockquote>
</div>

js:windows

//读取文本文件实例
var fileBox = document.getElementById('file');
function showFiles() {
    //获取选择文件的数组
    var fileList = fileBox.files;
    for (var i = 0; i < fileList.length; i++) {
        var file = fileList[i];
        readFile(file);
    }
}
//读取文件内容
function readFile(file) {
    var reader = new FileReader();
    //中文windows系统 txt 文本多数默认编码 gbk
    reader.readAsText(file, 'gbk');
    reader.onload = function (e) {
        var result = reader.result;
        $('.container blockquote').text(result);
    }
}

2、读取或预览客户图片数组

<div class="container">
    <!--图片类型验证方法1-->
    <input type="file" id="file" multiple accept="image/*" />
    <input type="button" id="btn1" value="选择上传文件" onclick="showFiles();" />
    <h4>选择文件以下:</h4>
    <img src="" id="img1" />
</div>

JS:编码

//读取图片实例
var fileBox = document.getElementById('file');
function showFiles() {
    //获取选择文件的数组
    var fileList = fileBox.files;
    for (var i = 0; i < fileList.length; i++) {
        var file = fileList[i];
        //图片类型验证第二种方式
        if (/image\/\w+/.test(file.type))
            readFile(file);
        else
            console.log(file.name + ':不是图片');
    }
}
//读取图片内容 为DataURL
//reader.readAsDataURL
function readFile(file) {
    var reader = new FileReader();
    reader.readAsDataURL(file);
    reader.onload = function (e) {
        var result = reader.result;
        $('.container blockquote').text(result);
        $('#img1').attr('src', result)
    }
}
 
相关文章
相关标签/搜索