首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Deno阵列输出问题

Deno阵列输出问题
EN

Stack Overflow用户
提问于 2021-05-16 13:33:37
回答 1查看 248关注 0票数 1

我正在尝试使用deno运行一个API,它应该显示来自给定目录的文件中的一些PDF-元数据。这很好,直到PDF-ID。PDF-ID应该是文件名的最后两位数。jk03.pdf,fh04.pdf,.)如果我运行API,所有元数据都会显示为对象内部的数组,除非创建自己数组的ID。有人知道我如何在不创建自己的数组的情况下实现ID。

这就是我到现在为止得到的:

代码语言:javascript
复制
import { PDFDocument } from 'https://cdn.skypack.dev/pdf-lib@^1.11.1?dts';
import { opine, json } from "https://deno.land/x/opine@1.3.4/mod.ts";


const app = opine();
const port = 3000;

app.use(json());

let metaData = new Array();
let pdfData = new Object();

app.get("/pdf", async(req, res) => {
  
  const basePath = './Documents/';
  for (const dirEntry of Deno.readDirSync("./Documents")) {
    
    async function readDocumentMetadata() {
      const filePath = basePath + dirEntry.name
      const existingPdfBytes = await Deno.readFile(filePath);
      const pdfDoc = await PDFDocument.load(existingPdfBytes, {
        updateMetadata: false 
      });
      
      var pdfId = dirEntry.name.match(/[0-9]+/g)[0];      
      const file = Deno.openSync(filePath, { read: true });
      const fileInfo = Deno.fstatSync(file.rid);

      pdfData = {        
        ID : pdfId[0],
        Name : dirEntry.name,
        Size : fileInfo.size + " Bytes",
        Pages : pdfDoc.getPageCount(),
        CreationDate : pdfDoc.getCreationDate(),
        ModificationDate : pdfDoc.getModificationDate()
      };

      metaData.push(pdfData);        
      
    };
    await readDocumentMetadata();    
  };
  res.json(metaData);
});

console.log("Server running on port", (port));
app.listen(port);

这是我得到的错误信息:{“资源”:"/c:/Users/JK/deno/deno-vs-node/GetAllPdf.ts","owner":"deno","code":"2531","endLineNumber":8," message ":"Object可能‘null’“,"source":”deno“,"startLineNumber":25,"startColumn":21,”endLineNumber“:25,"endColumn":50 }

EN

回答 1

Stack Overflow用户

发布于 2021-05-20 07:37:53

我在行的末尾添加了.toString(),它现在工作得很好;

const pdfId = dirEntry.name.match(/0-9+/)?.toString();

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67557303

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档