Heim > Web-Frontend > js-Tutorial > Hauptteil

js analysiert lokale Excel-Dateien

不言
Freigeben: 2018-04-03 14:49:05
Original
2103 Leute haben es durchsucht


Das Parsen von Excel-Dateien erfolgt normalerweise im Backend, aber heute bin ich auf die Notwendigkeit gestoßen, Excel-Dateidaten im Frontend zu analysieren und zu verarbeiten:

<!DOCTYPE html><html><head><meta charset="UTF-8"><title>解析Excel文件</title></head><body>
    <input type="file" onchange="importf(this)" /></body><script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.js"></script><script src="https://cdn.bootcss.com/xlsx/0.12.6/xlsx.full.min.js"></script><script type="text/javascript">
    var wb;// 读取完成的数据
    var rABS = false; // 是否将文件读取为二进制字符串

    // 导入
    function importf(obj) {
        if (!obj.files) {            return;
        }        var f = obj.files[0];        var reader = new FileReader();
        reader.onload = function(e) {
            var data = e.target.result;            if (rABS) {                // 手动转化
                wb = XLSX.read(btoa(fixdata(data)), {
                    type : &#39;base64&#39;
                });
            } else {
                wb = XLSX.read(data, {
                    type : &#39;binary&#39;
                });
            }            // wb.SheetNames[0]是获取Sheets中第一个Sheet的名字
        // wb.Sheets[Sheet名]获取第一个Sheet的数据JSON.stringify(XLSX.utils.sheet_to_json(wb.Sheets[wb.SheetNames[0]]));
        };        if (rABS) {
            reader.readAsArrayBuffer(f);
        } else {
            reader.readAsBinaryString(f);
        }
    }    // 文件流转BinaryString
    function fixdata(data) {
        var o = "", l = 0, w = 10240;        for (; l < data.byteLength / w; ++l) {
            o += String.fromCharCode.apply(null, new Uint8Array(data.slice(l * w, l * w + w)));
        }
        o += String.fromCharCode.apply(null, new Uint8Array(data.slice(l * w)));        return o;
    }</script></html>
Nach dem Login kopieren



Das obige ist der detaillierte Inhalt vonjs analysiert lokale Excel-Dateien. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!