Deno 是一款现代化的 JavaScript 和 TypeScript 运行时,带有安全性和可维护性的极高特性。在 Deno 中,我们可以很方便地读写文件。在本文中,我们将详细讨论如何在 Deno 代码中读写文件,同时给出示例代码。
读取文件
在 Deno 中,我们可以使用 Deno.readTextFile()
函数读取文件。该函数的参数是文件路径,返回一个 Promise 对象,其值为文件内容的字符串形式。
const filename = 'example.txt'; const contents = await Deno.readTextFile(filename); console.log(contents);
在上面的示例中,我们读取了文件 example.txt
的内容,并在控制台打印出来。
如果要读取二进制文件(比如图片或视频),我们可以使用 Deno.readFile()
函数。与 Deno.readTextFile()
不同,Deno.readFile()
返回一个 Uint8Array 数组,而非字符串。
const filename = 'example.jpg'; const contents = await Deno.readFile(filename); console.log(contents);
写入文件
在 Deno 中,我们可以使用 Deno.writeTextFile()
函数写入文本文件。该函数接受两个参数:文件路径和要写入的内容。该函数返回一个 Promise 对象,表示写入完成。
const filename = 'example.txt'; const contents = 'Hello World!'; await Deno.writeTextFile(filename, contents);
在上述示例中,我们将字符串 Hello World!
写入了文件 example.txt
中。
如果要写入二进制文件,我们可以使用 Deno.writeFile()
函数。该函数接受两个参数:文件路径和要写入的 Uint8Array 数组。与 Deno.writeTextFile()
相同,该函数返回一个 Promise 对象。
const filename = 'example.jpg'; const contents = new Uint8Array([255, 216, 255, 224, 0, 16, 74, 70]); await Deno.writeFile(filename, contents);
在上述示例中,我们创建一个 Uint8Array 数组来表示 JPG 文件的头部内容,并将其写入到文件 example.jpg
中。
异常处理
在读写文件的时候,异常情况是时常存在的。如果文件不存在或者读写权限不足,将会导致异常。在 Deno 中,我们可以使用 try...catch
语句来捕捉这些异常。
try { const filename = 'example.txt'; const contents = await Deno.readTextFile(filename); console.log(contents); } catch (error) { console.error(error); }
在上述示例中,我们使用了 try...catch
语句来捕捉 Deno.readTextFile()
函数可能抛出的异常错误,并将其打印在控制台上。
总结
在 Deno 中,我们可以很方便地读写文件。我们可以使用 Deno.readTextFile()
函数读取文本文件,也可以使用 Deno.readFile()
函数读取二进制文件。同样,我们也可以使用 Deno.writeTextFile()
和 Deno.writeFile()
函数写入文本和二进制文件。在读写文件的时候,我们需要注意异常情况,并使用 try...catch
语句捕捉错误。读写文件是前端开发中非常基础的操作,对于初学者来说,掌握 Deno 中的文件读写操作十分重要。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/651da16595b1f8cacd53e486