美文网首页
前端node.js写入功能

前端node.js写入功能

作者: 甘道夫老矣 | 来源:发表于2020-07-20 10:50 被阅读0次

需求需要,自己读取别人文档,自己试了一下,主要用到了写入文件

1. fs.stat 获取文件大小,创建时间等信息


// 引入 fs 模块
const fs = require('fs');

fs.stat('1.js', (err, stats) => {
    if (err) {
        console.log(err);     return false;
    } else {
        // 检测类型,是文件还是目录
        console.log(`文件:${stats.isFile()}`);
        console.log(`目录:${stats.isDirectory()}`);
        if (stats.isFile()) {
            // 文件大小
            console.log(`size:${stats.size}`);
            // 创建时间
            console.log(`birth time: ${stats.birthtime}`);
            // 最后一次修改时间
            console.log(`modified time:${stats.mtime}`);
        }
    }
})
//结果如下:
文件:true
目录:false
size:6241
birth time: Wed Jul 25 2020 09:00:00 GMT+0800 (中国标准时间)
modified time:Wed Jul 25 2020 09:50:15 GMT+0800 (中国标准时间)

3.fs.mkdir 创建目录

// 创建目录
// path:将创建的目录路径
// mode:目录权限(读写权限),默认0777
// callback:回调,传递异常参数err
//文件夹不能覆盖,文件可覆盖

let path="C\XXX\XXX\XXX"
 let savePath = path + '\/新建文件'
fs.mkdir(savePath ,(err)=>{
    if(err){
        console.log(err);     return false;
    }
    console.log('创建目录成功');
})

4.fs.writeFile 写入文件

//注意: 如果没有 'x.txt' 文件,会先创建文件,然后写入内容,如果已经存在 'x.txt' 文件,则会覆盖原来的内容
//savePath上面的路径,
//columns就是excel标题
//allData就是excel数据,但是都要处理成字符串类型
let str = [];
columns.forEach((item)=>{
    str.push(item.title)
});
//拼接字符串
allData.forEach((item, index) => {
    let resData = [];
    for (let key in item) {
        resData += item[key] + ','
    }
    str += "\n" + resData
});
fs.writeFile(savePath, str , 'utf8', (err) => {
            if (err) {
                console.log('写入文件出错拉!具体错误:' + err)
                return message.error("写入路径失败,请重新输入!")
            } else {
                console.log('ok');
            }
 });

详细文档参考:
node.js 中的 fs (文件)模块
https://www.cnblogs.com/Sky-Ice/p/9365150.html

node.js中fs文件系统模块的使用
https://www.cnblogs.com/jkko123/p/10231153.html

相关文章

网友评论

      本文标题:前端node.js写入功能

      本文链接:https://www.haomeiwen.com/subject/hxjekktx.html