Bun入门指南

文件写入和读取

Preview
  • 文件的写入和读取
  • 写入文件
  • 读取文件

文件的写入和读取

写入文件

如果你想写入文件,可以使用Bun的API Bun.write。将文件路径指定为第一个参数,将要写入文件的内容指定为第二个参数。

//index.ts
import express from 'express'
const app = express()
// const port = 3000
//const port = process.env.PORT
const port = Bun.env.PORT
const message = 'Hello World!'
//写入文件
await Bun.write('text.txt',message)
app.get('/',(req,res)=> res.send('Hello World!'))
app.listen(port,()=>console.log(`app listening on port ${port}!`))

执行时,将在与index.ts文件相同的目录中创建一个text.txt文件,并在其中写入“Hello World”。 image.png

也可以使用fs模块进行编写,虽然fs模块是Node.js的,但是Bun可以使用Node.js的核心API。

//index.ts
import * as fs from "fs";
const message = 'Hello World!!!!!'
fs.writeFile('text2.txt',message,(err)=>{
    if (err){
        console.error(err)
    }
})

image.png

读取文件

在Bun中,可以使用Bun.file来读取文件。通过将文件路径指定为Bun.file 的参数来创建 BunFile 实例。

//index.ts
//读取文件
const file = Bun.file('text.txt')
const message = await file.text()
console.log('读取',message)

image.png

Bun.file 返回的 Bunfile 实例具有名称、类型属性和存在方法,因此可以检查文件信息和存在性。

//index.ts
const file = Bun.file('text.txt') as BunFile;
const message = await file.text();
const isFile = await file.exists()
console.log('内容',message)
console.log('是否存在',isFile)
console.log('type',file.type)
console.log('name',file.name)

image.png

这样我们发现Bun不仅有自己的API,还可以使用Node.js的核心API。