如何将前端数据保存到文件
有时候,网页上需要提供将当前页面上的数据导出为本地文件的功能,例如将页面上的一个表格导出为csv文件。这个功能看似简单,实际上却没有什么直接的方法。由于导出文件的操作(比如浏览文件目录,创建本地文件等)已经超出了浏览器内JS解释器的职责范围,需要和操作系统交互了,所以如果没有浏览器提供接口支持,是没法导出文件的。
但是,有一个巧妙的办法,就是使用<a>
元素(https://stackoverflow.com/questions/13405129/javascript-create-and-save-file )。 这个办法巧妙结合了两个小技巧:1. http链接可以以下载文件的方式打开 2. 通过URL.createObjectURL(object)可以为一个JS File/Blob对象创建一个 URL。
代码如下:
function download(text, name, type) {var a = document.getElementById("a");var file = new Blob([text], {type: type});a.href = URL.createObjectURL(file);a.download = name;a.dispatchEvent(new MouseEvent('click', {'bubbles': false, 'cancelable': true}));
}<a href="" id="a">click here to download your file</a>
<button οnclick="download('file text', 'myfilename.txt', 'text/plain')">Create file</button>
代码实现的功能包括:
- 页面上放一个隐藏的
<a>
元素 - 当用户要导出文件时(比如点击了导出按钮),根据导出内容创建一个Blob对象并产生对应的url
- 将 a 元素的href设置为上述url, 并设置 download属性
- 最后触发一个a元素的点击事件,就会弹出保存文件的窗口。
转载于:https://www.cnblogs.com/a-distant-bright-star/p/7286782.html
如何将前端数据保存到文件相关推荐
- java jtable导出txt_如何将jtable中的文本数据保存到文件中
展开全部 package com.dhee.the_first_group.Finance; import java.awt.Color; import java.awt.Dimension; imp ...
- android 把数据保存到文件中的实例
/*** 把字符串写入文件* @param data* @param fileName*/ public void writeDataToFile(String data,String fileNam ...
- java数据保存到文件_Java把数据存储到本地txt文件
码农公社 210.net.cn 210= 1024 10月24日一个重要的节日--码农(程序员)节 Java把数据存储到本地txt文件 java存储数据,方便打印日志等 1.覆盖以前的数据 tr ...
- python中print又可将数据写入文件_Python 通过print_lol将数据保存到文件中
1. 定义一个print_lol函数来控制列表的缩进和写入位置 import sys """this is a new fuction, which work for a ...
- 【存储过程】从数据库中读取数据保存到文件中
2019独角兽企业重金招聘Python工程师标准>>> 由于初期规划不好,项目管理的action都存入到数据库中了,而实际上应该以配置文件的形式保存的,所以现在想改过来.一条条复制是 ...
- IFIX数据写入html,ifix历史曲线如何保存到文件?
摘要:本文对如何将ifix历史曲线保存到文件的具体操作步骤进行了详细介绍,供使用时参考. 概述-后台进程是htc.exe 1.安装FIX58_ClassicHistorian_001.exe, 2.修 ...
- Qt简单编程--数组保存到文件
对于需要操作下位机的情况,往往需要保存二进制数据到文件.一般的做法是读数据到数组缓冲,再把数组的数据保存到文件. 保存数组到文件,很简单. QFile f("flash_data.bin&q ...
- Project 2 :Python爬虫源码实现抓取豆瓣电影爱情电影Top200并保存到文件
基于python3.6-pycharm编写的,都已经调试过了,欢迎大家提出交流意见. 关于一些基础的数据网页分析(比如为什么是这个url)没有过多赘述,看不懂的自行百度. 源码可以直接拷贝运行. 转载 ...
- Project 1 :Python爬虫源码实现抓取淘宝指定商品所有评论并保存到文件
学习python一个多月,掌握了一些基础,因为开淘宝店的原因,平时会抓取一些淘宝数据,尝试用简单的语言写一些python爬虫,关键信息都注释在源码内.这是我的第一个爬虫程序,基于python3.6-p ...
最新文章
- R语言glmnet拟合岭回归模型实战:岭回归模型的模型系数(ridge regression coefficients)及可视化、岭回归模型分类评估计算(混淆矩阵、accuracy、Deviance)
- item的常用类型上
- python 批量下载文件
- Python求解线性方程组
- Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (111)解决方法
- 嵌入式编程与c语言有何区别,有的嵌入式设备也提供C++编译器,那还有理由坚持使用C语言吗?...
- xpath+多进程爬取网易云音乐热歌榜。
- Oauth2协议详解
- 2020年书法落款_快来排排2020鼠年书法落款时间表,收!
- 用GDB调试PHP扩展
- 我的世界java致命错误_《我的世界》六个“致命错误”,最后一个“不作死就不会死”...
- spring cloud互联网分布式微服务云平台规划分析--spring cloud服务监控中心
- 一小时入门proteus使用教程
- python云计算有哪些岗位_云计算就业前景怎么样,包括哪些岗位,各岗位主要工作是什么?...
- 打开记事本文件出现黑色方块的解决办法
- Alphago zero知识点
- 大陆、港澳台身份证、护照、军官证、户口本的正则表达式
- 内网通过映射后的公网IP访问内网服务测试--ASA8.0 hairpin NAT测试
- 【neo4j】去除重复节点
- 使用win32com来实现outlook的自动发送