×

nede.js中读取文件大小

nede.js中读取文件大小(js读内存)

admin admin 发表于2023-03-28 20:17:09 浏览56 评论0

抢沙发发表评论

本文目录一览:

node.js fs.stat只能读取本地文件大小吗

通过curl命令读文件的头信息:

curl -I -L

假设后面那个url就是你的远程文件

然后会得到如下信息:

HTTP/1.1 200 OKServer: nginxDate: Mon, 27 Jun 2016 09:22:01 GMT

Content-Type: application/vnd.ms-fontobject

Content-Length: 180392Connection: keep-alive

Accept-Ranges: bytes

Cache-Control: public, max-age=864000ETag: W/"2c0a8-1557c399f18"Last-Modified: Thu, 23 Jun 2016 07:46:39 GMTVary: Accept-Encoding-nede.js中读取文件大小

X-Powered-By: Express

其中,Content-Length这个部分就是文件大小了。

nodejs 怎么获取文件大小

这个主要是DFS深度优先遍历+ 先序。 先拿到Path,readdir foreach检测isDirectory,如果是,继续,不是,callback, 这里返回文件的大小

node.js解析excel大文件的问题

问题:使用 koa-bodyparser 可以解析post提交的问题,但是发现获取不到formdata上传的文件。

后经查资料,改用 koa-body 解决:

constkoaBody = require('koa-body'); app.use(koaBody({ multipart:true, formidable: { maxFileSize:200*1024*1024//设置上传文件大小最大限制,默认2M} }))-nede.js中读取文件大小

然后就可以在 ctx.request.files 里面获取到上传的 文件信息了。ctx.request.files 为一个对象,里面包含一个 file 字段(为你前端上传定义的值),值为文件信息,主要是文件name和path,path为临时存储路径。-nede.js中读取文件大小

二、解析xlsx文件信息

主要使用模块 node-xlsx :npm i xlsx --save

1、加载模块

使用模块:fs--主要用于写入文件;node-xlsx主要用于转换xlsx数据和读取xlsx的文件数据;

constfs = require('fs')constxlsx = require('node-xlsx');//读写xlsx的插件

2、读取功能

读取功能相对简单,直接使用模块的 prase(路径) 方法就能读取

let list = xlsx.parse("./doc/hello.xlsx");

返回结果,name:表名,data:二维数组。(由于Excel以表格的形式表示,因此表格的数据都是通过二维数组进行接收。)

需要注意的是:data里的第一行数组为表头的信息

[ { name:'firstSheet', data: [ [Array], [Array] ] }, { name:'secondSheet', data: [ [Array], [Array] ] } ]-nede.js中读取文件大小

3、写入功能

写入功能,对应的写入数据与上面读取功能的返回格式需要一致,以数组的形式,name:表名,data:二维数组(Excel每行每列的数据)

如下面代码,生成一个Excel文件,分别两张表,表名分别是firstSheet,secondSheet

let xlsxObj =[ { name:'firstSheet', data: [ [1,2,3], [4,5,6] ], }, { name:'secondSheet', data: [ [7,8,9], [10,1,12] ], } ]-nede.js中读取文件大小

生成Excel文件:

fs.writeFileSync(路径,Buffer数据)

xlsx.build(xlsxObj) 会将数组转换为Buffer数据

执行下面代码就会生成对应的Excel文件

fs.writeFileSync('./doc/hello.xlsx', xlsx.build(xlsxObj),"binary")

Node.js如何获取文件大小

const size = await utils.getFileSize(filePath);

getFileSize(file) {

    file = decodeURI(file);

    return new Promise((resolve) = {

      if (!file) {

        resolve(0);

        return;

      }

      const filePath = path.resolve(__dirname, "../public", file);

      fs.stat(filePath, (err, data) = {

        if (err == null) {

          resolve(data.size);

          return;

        }

        resolve(0);

      });

    });

  },