阿西河

所有教程

公众号
🌙
阿西河前端的公众号

我的收藏

    最近访问  (文章)

      教程列表

      抓包专区
      测试专区

      Deno 读取本地文件

      读取一个文件

      Deno 也提供内置的 API,它们都位于全局变量 Deno 中。

      您可以在此找到相关文档:doc.deno.land

      文件系统 API 没有 web 标准形式,所以 Deno 提供了内置的 API。

      在这个程序中,每个命令行参数都是一个文件名,参数对应的文件将被依次打开,打印到标准输出流。

      for (let i = 0; i < Deno.args.length; i++) {
        let filename = Deno.args[i];
        let file = await Deno.open(filename);
        await Deno.copy(file, Deno.stdout);
        file.close();
      }
      
      

      除了内核到用户空间再到内核的必要拷贝,这里的 copy() 函数不会产生额外的消耗性能操作;

      从文件中读到的数据会原样写入标准输出流。这反映了 Deno I/O 流的通用设计目标。

      尝试一下

      https://a.axihe.com/edu/deno/explorer_QVWvmETrrj.png

      尝试读取本地的 axihe.com.md / test.mdtest2.md 文件

      Git bash 运行

      再用 Git bash 试试

      deno run --allow-read https://deno.land/std/examples/cat.ts /e/deno/axihe.com.md
      deno run --allow-read https://deno.land/std/examples/cat.ts /e/deno/test.md
      deno run --allow-read https://deno.land/std/examples/cat.ts /e/deno/test2.md
      

      https://a.axihe.com/edu/deno/mintty_JiDfdWcfdZ.png

      PowerShell 运行

      deno run --allow-read https://deno.land/std/examples/cat.ts E:\deno\axihe.com.md
      

      https://a.axihe.com/edu/deno/powershell_u53NMmH2mT.png

      再试试英文的,发现英文状态可以的;

      https://a.axihe.com/edu/deno/powershell_Y0jWfO7VwS.png

      根据我的经验,这是因为 powershell 和 cmd 的解析问题,不是 Deno 的锅,我们来设置一下 powershell 格式

      修改 powershell 格式

      临时修改

      直接在 powershell 中执行 chcp 命令

      chcp 65001
      

      运行试试,发现可以运行

      https://a.axihe.com/edu/deno/powershell_BM0BJHJHlF.png

      更多 Windows 上乱码的解决

      Deno 在 Windows 上使用的中文乱码问题解决

      目录
      目录