首页 > 解决方案 > 使用nodejs从文件中检索属性?

问题描述

嗨,我正在寻找一个 nodejs 代码,它可能会返回文件夹中每个文件的属性。我开发了代码来检索文件夹中的所有文件名,并开发了另一个代码来列出我们提供的文件名数据。但实际上我需要返回文件夹中的所有文件名及其列名。我是nodejs的新手,所以请有人帮助我。

上市数据代码:

const AWS = require('aws-sdk');
const neatCsv = require('neat-csv');

var s3 = new AWS.S3({});

exports.handler = (event,context,callback)=>{
const params = {
 Bucket:'ml-framework-api',
 Key: wavicle.csv
 };

 s3.getObject(params,async(err, result) => {
    if (err){
         return console.error(err);
     }
        
neatCsv(result.Body).then((parsedData) => {
    callback(null,parsedData);
})
})
}

S3 中的列表文件:

const AWS = require('aws-sdk')
const s3 = new AWS.S3({
    accessKeyId:'-------------',
    secretAccessKey:'-------------------',
    region:'ap-south-1'
})

const params = {
    Bucket:'wavicle'
}

s3.listObjects(params,(err,data)=>{
    if(err){
        return console.log(err)
    }
    console.log(data)
})

标签: node.js

解决方案


最好从 node 的文件系统 api 文档开始。

这是一个如何获取文件夹文件信息的简单示例(有很多方法,这可以从上面文档中的示例快速获取):

const fsp = require("fs/promises");

async function dirFilesInfo(path) {
  const dir = await fsp.opendir(path);
  for await (const dirEntry of dir) {
    const fileInfo = await fsp.stat("./" + dirEntry.name);
    console.log(dirEntry.name, fileInfo);
  }
}
dirFilesInfo("./").catch(console.error);

推荐阅读