返回顶部
首页 > 资讯 > 精选 >js中怎么用文件流下载csv文件
  • 888
分享到

js中怎么用文件流下载csv文件

2023-07-05 00:07:45 888人浏览 独家记忆
摘要

这篇文章主要讲解了“js中怎么用文件流下载csv文件”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“js中怎么用文件流下载csv文件”吧!js使用文件流下载csv文件的实现方法理解 Blob

这篇文章主要讲解了“js中怎么用文件流下载csv文件”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“js中怎么用文件流下载csv文件”吧!

js使用文件流下载csv文件的实现方法

理解 Blob 对象

在 Blob 对象出现之前,在 javascript 中一直没有比较好的方式处理二进制文件,自从有了 Blob 了,我们就可以使用它操作二进制数据了。

现在我们开始来理解下 Bolb 对象及它的文件流下载应用场景,话不多说了,来一起看看详细的介绍吧

  • 创建 Blob 对象方式如下:

var blob = new Blob(dataArray, options);

dataArray: 它是一个数组,它包含了要添加到 Blob 对象中的数据。数组可以是二进制对象或者字符串

options 是可选的对象参数,用于设置数组中数据的 MIME 类型。

  • 创建一个 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"}

  • 理解 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

  • 理解 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文件”的内容了,经过本文的学习后,相信大家对js中怎么用文件流下载csv文件这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

--结束END--

本文标题: js中怎么用文件流下载csv文件

本文链接: https://lsjlt.com/news/348787.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • js中怎么用文件流下载csv文件
    这篇文章主要讲解了“js中怎么用文件流下载csv文件”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“js中怎么用文件流下载csv文件”吧!js使用文件流下载csv文件的实现方法理解 Blob ...
    99+
    2023-07-05
  • 一文详解js如何用文件流下载csv文件
    本篇文章给大家带来了关于js+csv的相关知识,其中主要介绍了什么是Blob对象,怎么理解它以及如何使用文件流实现下载csv文件,感兴趣的朋友,下面一起来看一下吧,希望对大家有帮助。js使用文件流下载csv文件的实现方法理解 Blob 对象...
    99+
    2023-05-14
    javascript csv
  • js如何实现文件流式下载文件
    在JavaScript中,可以使用Blob对象和URL.createObjectURL()方法来实现文件的流式下载。具体步骤如下:1...
    99+
    2023-08-09
    js
  • vue中怎么下载excel流文件及设置下载文件名
    这篇文章给大家分享的是有关vue中怎么下载excel流文件及设置下载文件名的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。概述导出excel需求,当点击下载模板或下载反馈结果,axios发起后端接口请求,返回的数据...
    99+
    2023-06-15
  • RestTemplate文件上传下载与大文件流式下载
    目录一、文件上传二、文件下载三、大文件下载本文是精讲RestTemplate第6篇,前篇的blog访问地址如下: RestTemplate在Spring或非Spring环境下使用精讲...
    99+
    2024-04-02
  • vue中如何下载excel流文件及设置下载文件名
    目录概述1、通过 url 下载2、通过 a 标签 download 属性结合 blob 构造函数下载3、通过 js-file-download 插件概述 导出excel需求,当点击下...
    99+
    2024-04-02
  • PHP中怎么用流方式实现下载文件
    这篇文章主要讲解了“PHP中怎么用流方式实现下载文件”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“PHP中怎么用流方式实现下载文件”吧!PHP 中使用流方式下载文件在 PHP 中,可以使用 ...
    99+
    2023-07-05
  • PHP 中使用流方式下载文件
    在 PHP 中,可以使用 fopen () 函数打开一个远程文件,并使用流来下载文件内容到本地文件。这样优点是不用将文件全部一次性放入内存中,可以避免内存溢出的问题。 下面是一个示例代码: $url = 'http://example.co...
    99+
    2023-08-31
    laravel php
  • Python中CSV文件怎么使用
    本篇内容介绍了“Python中CSV文件怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、csv文件介绍1、csv文件简介逗号分隔值...
    99+
    2023-07-02
  • js实现文件流式下载文件方法详解及完整代码
    JS实现流式打包下载说明 浏览器中的流式操作可以节省内存,扩大 JS 的应用边界,比如我们可以在浏览器里进行视频剪辑,而不用担心视频文件将内存撑爆。 浏览器虽然有...
    99+
    2022-12-10
    js实现文件流下载 js实现文件下载 js实现大文件下载 js下载文件 js文件流下载 js下载文件源码 js文件流下载源码
  • java中怎么下载文件流保存到本地
    在Java中,可以使用`InputStream`和`OutputStream`来下载文件流并保存到本地。下面的代码演示了如何使用`U...
    99+
    2023-09-05
    java
  • 怎么在ajax中使用post方式下载flask文件流
    本篇文章给大家分享的是有关怎么在ajax中使用post方式下载flask文件流,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。ajax post下载文件后端返回文件流,flask...
    99+
    2023-06-08
  • JS怎么实现导出Excel和CSV文件
    这篇文章主要介绍了JS怎么实现导出Excel和CSV文件的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇JS怎么实现导出Excel和CSV文件文章都会有所收获,下面我们一起来看看吧。一、js导出Excel<...
    99+
    2023-06-30
  • Linux中怎么使用Aria2下载文件
    Linux中怎么使用Aria2下载文件,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。Aria2是一个免费的开源轻量级多协议命令行实用程序,可以从Internet上下载文件。...
    99+
    2023-06-28
  • python中怎么使用requests下载文件
    这篇文章主要介绍了python中怎么使用requests下载文件的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇python中怎么使用requests下载文件文章都会有所收获,下面我们一起来看看吧。使用reque...
    99+
    2023-06-29
  • java下载文件中文文件名乱码
    问题引出:上传中文命名的图片,下载显示不了中文名称。如图:(相关视频教程推荐:java视频教程)解决方法:sping-mvc.xml部分代码: FileController.java中文文件名获取代码:获取浏...
    99+
    2014-05-25
    java教程 java 下载 文件 中文 文件名 乱码
  • java文件下载中文文件名乱码
    JAVA文件下载时中文文件名乱码有两种情况:下载时中文文件名乱码;下载时因为路径中包含中文文件名乱码,提示找不到文件。相关视频教程分享:java视频教程解决方法如下:response.setContentType("multipart/fo...
    99+
    2021-10-07
    java教程 java 文件 下载 中文 文件名 乱码
  • 怎么使用ByteArrayOutputStream下载文件
    本篇内容主要讲解“怎么使用ByteArrayOutputStream下载文件”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使用ByteArrayOutputStream下载文件”吧!使用By...
    99+
    2023-06-22
  • C++中怎么读取CSV文件
    今天就跟大家聊聊有关C++中怎么读取CSV文件,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。***个函数:计算一个字符串中的某个子串的个数int strstr_cnt(co...
    99+
    2023-06-17
  • plsql中怎么导入csv文件
    在PL/SQL中导入CSV文件通常需要使用外部表(external table)的方式。以下是一个简单的示例代码: 首先,创建一个...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作