BLOB (binary large object) 二进制大对象

BLOB简介:

BLOB (binary large object),二进制大对象,是一个可以存储二进制文件的容器。
在计算机中,BLOB常常是数据库中用来存储二进制文件的字段类型。
BLOB是一个大文件,典型的BLOB是一张图片或一个声音文件,由于它们的尺寸,必须使用特殊的方式来处理(例如:上传、下载或者存放到一个数据库)。
根据Eric Raymond的说法,处理BLOB的主要思想就是让文件处理器(如数据库管理器)不去理会文件是什么,而是关心如何去处理它。
但也有专家强调,这种处理大数据对象的方法是把双刃剑,它有可能引发一些问题,如存储的二进制文件过大,会使数据库的性能下降。在数据库中存放体积较大的多媒体对象就是应用程序处理BLOB的典型例子。

1、DataURL

html页面代码:

<div>
    <input type="file" id="myImgFile">
    <img src="" id="myImg"/>
</div>

JS脚本代码:

myImgFile.addEventListener("change",previewWithDataURL)
    function previewWithDataURL() {
        var reader = new FileReader();
        reader.readAsDataURL($("#myImgFile")[0].files[0]);
        reader.onload = function (event) {
            $("#myImg").attr("src", event.target.result);
        }
    }

2、ObjectURL

html页面代码:

<input type="file" id="myMusicFile">
<audio controls="controls" src="" id="myMusic"></audio>

JS脚本代码:

myMusicFile.addEventListener("change",previewWithObjectURL)
function previewWithObjectURL() {
    var target = event.target.files[0];
    var url = URL.createObjectURL(target);
    myMusic.src = url;
    myMusic.play();
}

 

posted @ 2018-11-07 15:54  xiaobai1007  阅读(547)  评论(0编辑  收藏  举报