HTML5 使用 FileReader 讀取并預(yù)覽文件內(nèi)容

參考:https://blog.csdn.net/liguodong456/article/details/83038619

HTML

<div>
    <h2>文本:</h2>
    <input type="file" id="file-text" accept="*" />
</div>
<div>
    <h2>二進(jìn)制:</h2>
    <input type="file" id="file-bin" accept="*" />
</div>
<div>
    <h2>圖像:</h2>
    <input type="file" id="file-image" accept="image/*" />
</div>
<div id="file-result" style="white-space: pre;"></div>

JavaScript

/* 選擇文件 */
var fileText = document.querySelector("#file-text");
var fileBinary = document.querySelector("#file-bin");
var fileImage = document.querySelector("#file-image");

/* 結(jié)果 */
var fileResult = document.querySelector("#file-result");

/* 檢測是否支持 FileReader */
if (typeof (FileReader) === "undefined") {
    fileResult.innerHTML = "您的瀏覽器不支持 FileReader";
} else {
    var reader = new FileReader();

    fileText.onchange = function () {
        var file = fileText.files[0];
        reader.readAsText(file, "utf-8"); // 將文件以 UTF-8 編碼讀取為文本
        reader.onload = function () {
            fileResult.innerHTML = reader.result;
        }
    }

    fileBinary.onchange = function () {
        var file = fileBinary.files[0];
        reader.readAsBinaryString(file);
        reader.onload = function () {
            fileResult.innerHTML = reader.result;
        }
    }

    fileImage.onchange = function () {
        var file = fileImage.files[0];
        reader.readAsDataURL(file);
        reader.onload = function () {
            fileResult.innerHTML = '<img src="' + reader.result + '" style="width: 100%;" />'
        }
    }
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容