访问nw.js中的文件属性

Accessing file properties in nw.js

本文关键字:文件属性 js nw 访问      更新时间:2023-09-26

我正在使用nw.js创建一个本地应用程序。下面是我的代码片段:

<input id="fileDialog" type="file" accept=".pdf,.epub" multiple/><a id="add" href="#">Add</a>

这是我的js代码:

document.getElementById("add").addEventListener("click", function(){
          document.getElementById("fileDialog").click();
});
document.querySelector('#fileDialog')
    .addEventListener("change", function() {
    var filePath = this.value;
        alert(filePath);
});

我可以得到所选文件的文件路径。是否有可能访问文件的属性?

文件统计信息

您可以使用fs获取文件的一些统计信息。生成fs的Stat函数。Stats对象。它具有修改和创建时间,文件大小,权限模式等。

const fs = require('fs');
fs.stat('path/to/file', function(err, stats) {
    console.log(stats);
});

检索元数据

如果您将属性视为元数据(标题、出版商、ISBN、语言等),则有不同的元数据格式。根据您的具体情况:PDF为XMP, EPUB为DCMES。

  1. 要从PDF文件中读取元数据,请尝试此模块:https://www.npmjs.com/package/pdfmeta

    const pdfMeta = require('pdfmeta');
    pdfMeta.getInfo('path/to/file').then(function(data) {
        console.log(data);
    });
    
  2. 要从EPUB文件中读取元数据,请尝试此模块:https://www.npmjs.com/package/epub-metadata

    const epubMetadata = require('epub-metadata');
    epubMetadata.getInfo('path/to/file').then(function(data) {
        console.log(data);
    });