中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

js使用文件流下載csv文件的實現

發布時間:2021-06-02 17:29:29 來源:億速云 閱讀:196 作者:Leah 欄目:web開發

這期內容當中小編將會給大家帶來有關js使用文件流下載csv文件的實現,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

1. 創建Blob對象方式如下:

var blob = new Blob(dataArray, options);

dataArray: 它是一個數組,它包含了要添加到Blob對象中的數據。數組可以是二進制對象或者字符串。

options是可選的對象參數,用于設置數組中數據的MIME類型。

1. 創建一個DOMString對象的Blob對象。如下代碼:

var str = "<div>Hello World</div>"; 
var blob = new Blob([str], {type: 'text/xml'}); 
console.log(blob); // 輸出:Blob {size: 22, type: "text/xml"}

2. 理解URL.createObjectURL對象

window對象的URL對象是用來將blob或file讀取成一個url的。

window.URL.createObjectURL(file / blob);

比如我現在結合上面的blob對象來生成一個url的簡單demo實列如下所示:

var str = "<div>Hello World</div>"; 
var blob = new Blob([str], {type: '.csv, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.ms-excel'});
console.log(blob); 

const url3 = window.URL.createObjectURL(blob);
console.log(url3);

如上代碼第一個打印blob變量值如下:

Blob {size: 22, type: ".csv, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.ms-excel"}

打印第二個url3變量值信息如下:

blob:null/2c75a56e-0104-4572-bc19-391d3bf93d9d

3. 理解HTML5中a標簽的download屬性

HTMl5中給a標簽新增了一個download屬性,只要我們設置該屬性值,那么點擊該鏈接時瀏覽器不會打開新鏈接,而是會直接下載文件,并且文件名就是 download 的屬性值。

因此結合這個特點,我們就可以簡單的實現文件流下載文件了,我們首先在原來的代碼基礎之上,再動態創建一個a鏈接,然后把該a標簽的樣式設置none, 該鏈接的 href屬性 就是我們上面是有 window.URL.createObjectURL(blob); 生成的url,然后我們把 a鏈接的download屬性設置下,該屬性值就是我們的下載文件的文件名。最后觸發點擊功能即可下載了。如下代碼:

var str = "<div>Hello World</div>"; 
var blob = new Blob([str], {type: '.csv, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.ms-excel'});
console.log(blob);
const url3 = window.URL.createObjectURL(blob);
console.log(url3);

var filename = '文件流下載' + '.csv';
const link = document.createElement('a');
link.style.display = 'none';
link.href = url3;
link.setAttribute('download', filename);
document.body.appendChild(link);
link.click();

上述就是小編為大家分享的js使用文件流下載csv文件的實現了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

js
AI

贡觉县| 繁峙县| 当雄县| 紫金县| 波密县| 丹江口市| 建平县| 合川市| 赣州市| 安图县| 麟游县| 永嘉县| 中方县| 阿合奇县| 潜江市| 工布江达县| 弥渡县| 北辰区| 蚌埠市| 新泰市| 剑河县| 苍梧县| 沾益县| 凤凰县| 太白县| 习水县| 陇南市| 滨州市| 托克托县| 富川| 南开区| 崇州市| 邹城市| 陵水| 泸州市| 漯河市| 扶沟县| 通江县| 延长县| 通城县| 元朗区|