首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

将字符串blob写入文件(使用Node的XLSX模板)

将字符串blob写入文件是通过使用Node的XLSX模块来实现的。XLSX是一种用于处理Excel文件的库,它支持读取、写入和修改Excel文件。

首先,需要安装XLSX模块。可以使用npm命令进行安装:

代码语言:txt
复制
npm install xlsx

安装完成后,可以在代码中引入XLSX模块:

代码语言:txt
复制
const XLSX = require('xlsx');

接下来,可以使用XLSX模块的writeFile方法将字符串blob写入文件。该方法接受两个参数:文件路径和要写入的数据。示例代码如下:

代码语言:txt
复制
const fs = require('fs');

// 字符串blob数据
const blobData = '这是一个字符串blob';

// 文件路径
const filePath = 'output.xlsx';

// 创建工作簿
const workbook = XLSX.utils.book_new();

// 创建工作表
const worksheet = XLSX.utils.aoa_to_sheet([[blobData]]);

// 将工作表添加到工作簿
XLSX.utils.book_append_sheet(workbook, worksheet, 'Sheet1');

// 将工作簿写入文件
XLSX.writeFile(workbook, filePath);

console.log('文件写入成功');

上述代码中,首先创建了一个工作簿和一个工作表。然后,将字符串blob数据放入工作表中,并将工作表添加到工作簿中。最后,使用writeFile方法将工作簿写入文件。

在上述代码中,output.xlsx是要写入的文件路径,可以根据实际需求进行修改。文件写入成功后,会在控制台输出"文件写入成功"的提示。

这种方法适用于将字符串blob写入Excel文件。如果需要将字符串blob写入其他类型的文件,可以使用相应的模块和方法进行处理。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

python3 使用openpyxlmysql数据写入xlsx操作

python3 链接数据库需要下载名为pymysql第三方库 python3 读写xlsx需要下载名为openpyxl第三方库 在此我只贡献链接数据库和写入xlsx代码 import pymysql.cursors...wb.save(filename=dest_filename) if __name__ == '__main__': read_mysql_to_xlsx() 补充知识:Python 关闭文件释放内存疑惑...我用with语句打开了一个4g文件读取内容,然后程序末尾设置一个死循环,按理说with语句不是应该自动关闭文件释放资源吗?...应该是被文件读取到变量content一直占用吗?把content删除就会释放内存。或者去掉死循环,程序退出资源就自动释放了 既然这样的话关闭文件貌似没啥作用呢?具体释放了什么资源?...openpyxlmysql数据写入xlsx操作就是小编分享给大家全部内容了,希望能给大家一个参考。

1.4K20

利用 Blob 处理 node 层返回二进制文件字符串并下载文件

博客地址:https://ainyi.com/65 解释 | 背景 看到标题有点懵逼,哈哈,实际上是后端文件处理成二进制流,返回到前端,前端处理这个二进制字符串,输出文件或下载 最近公司有个需求是用户在点击下载文件...也就是必须通过网络请求得到这个文件,不能使用 ==fs.readFile== 读取文件,可以使用 ==get== 请求获取读写,编码设置成二进制 ==binary== // 后端 node 所写接口(...创建 blob 对象本质上和创建一个其他对象方式是一样,都是使用 Blob() 构造函数来进行创建 构造函数接受两个参数: 第一个参数为一个数据序列,可以是任意格式值 第二个参数是一个包含两个属性对象...,赋值到动态创建 a 标签 href 属性,设置好 download 属性,点击下载后移除 a 标签 注意 要注意是 在 node 层不必使用 Buffer 处理输出二进制对象,因为返回给前端时候还是二进制字符串形式...,所以 node 层可直接返回二进制流字符串 在前端在调用 Blob 构造函数时候,先利用 Buffer 二进制字符串转为 Buffer 对象,再作为 Blob 第一个参数,指定好第二个参数类型

11.9K10
  • JavaScript导出excel文件,并修改文件样式

    下来说说如何使用 xlsx-style ,导出 excel 文件,并修改样式。 示例: ?...null 工作簿属性 type: 值 描述 "base64" Base64编码 "binary" 二进制字符串 "buffer" nodejs 缓冲区 "file" 直接创建文件node 环境下有效...如果使用 writeFile 方法不需要设置 type 属性,因为在 xlsx-style 源码中已经 type 属性设置为 file 了, 而且使用这个方法,也不需要在 wopts 参数中设置 bookType...实现共享字符串表是为了通过仅读取和写入重复数据一次来提高打开和保存文件性能。...方法 Blob 对象 作为参数,得到一个对象URL,最后把对象URL设置为临时一个 a 链接 href 属性值,实现下载功能。

    5.7K30

    利用xlsx-style实现前端导出excle表并修改样式

    最近接二开项目当中,客户要求页面上有下载excle模板按钮,并提供输入数据基本模板 本来项目中一些数据量较大导出确实是后台来做。.../cptable‘ in ‘xxx\node_modules_xlsx,稳定解决方法是,在项目依赖包里修改下xlsx-style源代码 node_modules\xlsx-style\dist\cpexcel.js...前面讲json数据传出,公共方法封装在mixin里,数据进来后,进行处理,转数组,并通过XLSX.utils.json_to_sheet转为sheet对象 业务要求,生成模板里有两行示例,并且是黄色背景...可以打印出来看下 我这里 console.log('修改对象',wb.Sheets[name][i]); 出来是每一个单元格属性,v代表单元格内容,t代表值类型(字符串),s是样式,我们上面修改添加样式...到这里,修改excle表样式需求就基本实现了,上面修改样式代码有些冗长还需要整理,因为是公用方法,我这里是根据导入文件名字去进行单独样式改动,后面也可以把一些公共样式提取,如果要单独设置某个表样式

    3.8K60

    基于前端JS导出Excel文件(减轻服务端压力)

    、技术框架 SheetJS(又名js-xlsx,npm库名称为xlsxnode库也叫node-xlsx,以下简称JX),免费版不支持样式调整。...xlsx.core.min.js JX最新版核心文件,建议在网页表格导成workbook时使用其方法 xlsxStyle.core.min.js XS最新版核心文件,因为其原本命名与JX一样,避免冲突改名成...sheet转成最终excel文件blob对象,然后利用URL.createObjectURL下载 * @param sheet sheet数据 * @param sheetName excel页内签...(aoa); // 二进制文件 var blob = that.sheet2blob(sheet); that.openDownloadDialog(blob, title+that.dateToStr...('yyyyMMddHHmmss')+'.xlsx'); } /** * 日期对象转换为指定格式字符串 * f 日期格式,格式定义如下 yyyy-MM-dd HH:mm:ss * date Date

    15K23

    如何使用 JavaScript 导入和导出 Excel

    本文小编将为大家介绍如何在熟悉电子表格 UI 中轻松导入 Excel 文件,并以编程方式修改表格或允许用户进行编辑,最后使用葡萄城公司纯前端表格控件SpreadJS组件它们导出回 Excel 文件。...如下所示: 3)数据添加到导入 Excel 文件 在这里,我们将使用 利润损失表.xlsx 作为模板,如下图所示: 现在我们需要添加一个按钮来数据添加到导入 Excel 文件中。...copyTo() 函数 R 列到 AD 列公式从前一行复制到新行,这次使用 CopyToOptions.formula(只复制公式): sheet.copyTo( 10, 17, newRowIndex...( function (blob) { // save blob to a file saveAs(blob, fileName); }, function..." /> 然后添加一个调用此函数按钮: <button id="export"Export File</button 添加收入行后,使用导出文件按钮导出文件

    45620

    前端提效 - js 批量导出 excel 为zip压缩包

    本篇接着上一篇,重点讲方法更高级抽象,和下载多层级文件 zip 压缩包。...给每个 excel 创建 workbook并将数据写入,然后通过 JsZip库写入到压缩文件内,最终用 file-saver库提供 saveAs方法导出压缩文件。...file(`${param.filename}.xlsx`, blob) } else { // 写入 zip 中一个文件 zip.file(`${param.filename}.xlsx...使用示例 如文章开头使用示例,为了方便看清结构,每个对象 files 值删除,精简之后得到如下结构: downloadFiles2ZipWithFolder({ zipName: '压缩包...多级目录是通过文件名 folderName实现。 folderName为空字符串,则将它 files放入压缩包顶级目录中,不在任何子文件内。

    3.3K20

    nodejs实现导出excel报表

    js-xlsx : 目前 Github 上 star 数量最多处理 Excel 库,支持解析多种格式表格XLSX / XLSM / XLSB / XLS /CSV,解析采用纯js实现,写入需要依赖nodejs...文件数据及生成excel文件,仅支持xlsx格式文件;https://github.com/mgcrea/node-xlsx excel-parser : 基于Node.js解析excel文件数据,支持...xls及xlsx格式文件,需要依赖python,太重不太实用;https://github.com/leftshifters/excel-parser excel-export : 基于Node.js数据生成导出.../Node-Excel-Export node-xlrd : 基于node.js从excel文件中提取数据,仅支持xls格式文件,不支持xlsx,有点过时,常用都是XLSX 格式。...这里我们主要介绍一下excel-export应用。 安装 npm install excel-export 使用 nodejs使用框架是express,koa框架也类似。

    6.1K10

    node 导入 导出 下载excel

    excel文件 let buffer = xlsx.build(data) fs.writeFile('....') res.end(buffer, 'binary') } }) }) 使用 node-xlsx介绍点击此处 包进行excel导入导出解析 支出 xlsx xls 主要用到这个包二个...api: xlsx.build():格式化数据转化为可保存excelbuffer流,参数为一个数组 xlsx.parse(): 一个excel中数据转化为数组 使用 res.setHeader...') res.end(buffer, 'binary') 这三行代码是设置接口responseheader 访问接口直接下载一个叫做exportexcel文件 总体上node导入导出excel还是比较简单...,麻烦在于数据封装,以及一列一列解析,判断,要知道用户在excel有可能填写了很多不规范数据,这就需要我们程序做很多检查.规范人们excel导入模板

    56910

    前端怎么通过二进制流下载文件

    endings —— 默认值为 "transparent",用于指定包含行结束符 \n 字符串如何被写入。...它是以下两个值中一个: "native",代表行结束符会被更改为适合宿主操作系统文件系统换行符,或者 "transparent",代表会保持 blob中保存结束符不变。...() document.body.appendChild(aLink)}可能出现问题不设置responseType:blob文件会下载,但是打不开;文件不能下载,报code:500 MIME类型设置错误...,即要应用模式字符串,然后返回包含第一个匹配项信息数组;或者在没有匹配项情况下返回null。...返回数组是Array实例,但包含两个额外属性: index 和 inputindex 表示匹配项在字符串位置;index 表示匹配项在字符串位置。

    42010

    Excel解析工具easyexcel全面探索

    "; // 这里 需要指定写用哪个class去读,然后写到第一个sheet,名字为模板 然后文件流会自动关闭 // 如果这里想使用03 则 传入excelType参数即可...,数据解析成标题和内容,封装成适合Excel格式CellData,数据类型等,经过这步我们还没看到文件生成,那么下一步了 private void addJavaObjectToExcel...().write(writeWorkbookHolder.getOutputStream()); 这句是重点,写Excel持有容器中内容流输出;之后就是关闭流,删除临时文件过程 @Override...文件下载 写入提供参数OutputStream,其它和文件写入差不多 /** * 文件下载 * * 1....(fileName, DemoData.class).build(); // 去调用写入,这里我调用了五次,实际使用时根据数据库分页页数来。

    4.4K31

    前端必读:如何在 JavaScript 中使用SpreadJS导入和导出 Excel 文件

    设置 JavaScript 电子表格项目 添加 Excel 导入代码 数据添加到导入 Excel 文件 添加迷你图 添加 Excel 导出代码 设置 JavaScript 电子表格项目 首先,我们可以使用托管在...为此,我们可以使用命令行参数进行安装。打开命令提示符并导航到应用程序位置。在那里,您可以使用一个命令安装所需文件。...数据添加到导入 Excel 文件 我们使用本教程“损益表”Excel 模板导入本地文件。 现在我们可以使用 Spread.Sheets 脚本在这个文件中添加另一个收入行。...copyTo 函数先前行中公式复制到 R 到 AD 列新行,这次使用 CopyToOptions.formula: sheet.copyTo(10, 17, newRowIndex, 17, 1...这只是一个示例,说明如何使用 SpreadJS JavaScript 电子表格数据添加到 Excel 文件,然后使用简单 JavaScript 代码将它们导出回 Excel。

    4.1K10

    前端导出 excel(基于 Blob.js 和 Export2Excel.js 做前端导出)

    我们在使用 npm install 安装模块或插件时候,有两种命令把他们写入到 package.json 文件里面去,比如: –save-dev –save 在 package.json 文件里面提现出来区别就是...,使用 --save-dev 安装 插件,被写入到 devDependencies 对象里面去,而使用 --save 安装插件,是被写入到 dependencies 对象里面去。...vendor/Blob 后来找到解决方法是下载 blob.js 文件 blob.js 与 Export2Excel.js 放在同一个文件夹下,并将引用方式改为如下。...Blob([s2ab(wbout)], { type: "application/octet-stream" }), title + ".xlsx") } Blob.js 文件可以在 gitHub 下载...== "undefined" && window || this.content || this)); 封装一个方法方便调用 下图是我文件目录结构,新建 newToExcel.js 放在 utils

    12.6K30

    Blob、ArrayBuffer、File、FileReader和FormData区别

    MDN中官方解释是:一个Blob对象就是一个包含有只读原始数据文件对象。通俗点,我们可以直接Blob看做是一个不可修改二进制文件。...如果类型未知,则该值为空字符串。 方法 Blob只有一个slice方法,实现对文件分割(注意这里并不违背Blob只读性,slice只是只是复制指定范围内Blob数据)。...如果 buf 没有足够空间保存整个字符串,则只会写入 string 一部分。 只部分解码字符不会被写入。 返回值 返回实际写入大小。如果 buffer 空间不足, 则只会写入部分字符串。...(blob)就是二进制数据读取并编码为Base64格式,FileReader.readAsText(blob)就是二进制数据读取并编码为字符串形式。...FormData最大优点就是,比起普通ajax, 使用FormData我们可以异步上传一个二进制文件,而这个二进制文件,就是我们上面讲Blob对象。

    5.1K21

    Node】大数据导出

    简单导出接口,无非就是处理数据,写入文件,返回文件响应 但是如果处理超大数据,比如几百万条甚至以上,服务压力就很大,这样处理就肯定会挂掉 所以我们对导出接口做了一波优化 简单说 数据分批处理+文件流.../vajoy/p/6349817.html 举一个例子来自 你所需要知道关于 Node.js Streams 一切 下面将会使用 流 [fs.createFileStream] 和 读取整个文件 [.../big.file"); src.pipe(res); }); server.listen(8000); Node 内存仅仅升高了 十几M 4、npm 包 之前我们是使用node-xlsx】这个.../xlsx/${Date.now()}.xlsx`; // 创建一个流式写入器,指定写入文件路径 const workbook = new ExcelJS.stream.xlsx.WorkbookWriter...} // 提交工作表 My Sheet sheet.commit(); // 数据写入完成,交工作簿 workbook.commit() 然后就会在 xlsx 目录下 看到一个 excel 文件 上面我们创建文件时候

    2.2K20
    领券