Nodejs에서 파일을 읽고 쓰는 방법을 자세히 설명하는 기사

青灯夜游
풀어 주다: 2022-06-29 21:03:32
앞으로
2597명이 탐색했습니다.

Node에서 파일을 작동하는 방법은 무엇입니까? 다음 기사에서는 Nodejs를 사용하여 파일을 읽고 쓰는 방법에 대해 설명합니다. 도움이 되기를 바랍니다.

Nodejs에서 파일을 읽고 쓰는 방법을 자세히 설명하는 기사

파일을 조작하는 것은 서버의 기본 기능이자 백엔드 개발에 필요한 기능 중 하나입니다.

파일 작업에는 주로 읽기와 쓰기가 포함됩니다. 그리고 이러한 함수 Nodejs는 이미 해당 메소드를 제공했습니다. 그냥 전화하세요.

폴더 만들기

동기화 방법

const fs = require('fs')
fs.mkdirSync(`${__dirname}/雷猴`)
로그인 후 복사

NodeJS에는 fs라는 파일 모듈이 있습니다. 파일 작업을 수행하려면 먼저 이 모듈을 도입해야 합니다. NodeJS 有一个文件模块,叫 fs 。对文件操作的话,必须先引入这个模块。

使用 fs.mkdirSync 方法可以创建一个文件夹。里面传入要创建的文件夹的名字即可。

__dirname  指的是当前文件所在文件夹的绝对路径。

异步创建

const fs = require('fs')
fs.mkdir(`${__dirname}/雷猴`, err => {
  if (err) {
      console.error(err)
  }
})
로그인 후 복사

使用 fs.mkdir 方法可以进行异步创建,第一个参数也是文件夹名称,第二个是回到函数,该函数里有一个 err 参数,可以返回错误信息。

删除文件

创建完文件夹,本来是想讲 “删除文件夹” 的。但由于删除文件夹之前要清空里面所有文件,所以就把 删除文件 的用法放在前面讲。

删除文件分 同步异步 两种方法。

同步 fs.unlinkSync

const fs = require('fs')
fs.unlinkSync(`${__dirname}/test.txt`);
로그인 후 복사

fs.unlinkSync 里传入要删除的文件路径和文件名,即可删除指定文件。

异步 fs.unlink

const fs = require('fs')
fs.unlink(`${__dirname}/test.txt`, err => {
  if (err) {
      console.error(err)
  }
})
로그인 후 복사

fs.unlink 方法有2个参数,第一个参数是文件路径和文件名,第二个参数是监听删除失败的回调函数。

删除文件夹

删除文件夹之前要清空目标文件夹里的所有文件。 可以使用 fs.unlinkSyncfs.unlink 删除文件。

同步

const fs = require('fs')
fs.rmdirSync(`${__dirname}/雷猴`)
로그인 후 복사

异步

const fs = require('fs')
fs.rmdir(`${__dirname}/雷猴`, err => {
  if (err) {
      console.error(err)
  }
})
로그인 후 복사

和删除文件的用法差不多,删除文件夹的方法也有同步和异步,异步接受2个参数,第二个参数同样是监听报错的回调。

写入数据

const fs = require('fs')
const content = ' 雷猴雷猴\n'
const opt = {
  flag: 'a', // a:追加写入;w:覆盖写入
}

fs.writeFile('test.txt', content, opt, (err) => {
  if (err) {
      console.error(err)
  }
})
로그인 후 복사

fs.writeFile 方法可以将内容写入文件中。如果文件不存在,会自动创建文件。

fs.writeFile 参数说明:

  • 第一个参数:文件名
  • 第二个参数:写入的内容
  • 第三个参数:写入模式(追加、覆盖等)
  • 第四个参数:错误信息监听

读取数据

const fs = require('fs')
fs.readFile('fileName', (err, data) => {
  if (err) {
      console.error(err)    
      return
  }  
  // data 是二进制类型,需要转换成字符串  
  console.log(data.toString())
})
로그인 후 복사

使用 fs.readFile 方法可以读取数据,第一个参数是文件名;第二个参数是回调,err 监听错误信息,data 是读取回来的数据。

需要注意的是,读取回来的 data 是一个二进制类型的数据,需要使用 toString() 方法转换成我们读得懂的数据。

检查文件是否存在

const fs = require('fs')
const exist = fs.existsSync('fileName')
console.log(exist)
로그인 후 복사

使用 fs.existsSync 方法可以检测指定文件是否存在,如果存在就返回 true ;否则返回 false

总结

如果你使用 NodeJS

폴더를 생성하려면 fs.mkdirSync 메소드를 사용하세요. 생성할 폴더 이름을 입력하면 됩니다.

__dirname은 현재 파일이 위치한 폴더의 절대 경로를 나타냅니다.

비동기 생성

🎜rrreee🎜비동기적으로 생성하려면 fs.mkdir 메서드를 사용하세요. 첫 번째 매개변수도 폴더 이름이고 두 번째 매개변수는 입니다. err 매개변수는 오류 정보를 반환할 수 있습니다. 🎜🎜🎜파일 삭제🎜🎜🎜폴더를 만든 후 원래는 "폴더 삭제"에 대해 이야기하고 싶었습니다. 하지만 삭제하기 전에 폴더 안의 모든 파일을 지워야 하기 때문에 🎜파일 삭제🎜 사용법을 먼저 논의하겠습니다. 🎜🎜파일 삭제는 🎜동기🎜와 🎜비동기🎜 두 가지 방법으로 나뉩니다. 🎜🎜🎜동기화 fs.unlinkSync🎜🎜rrreee🎜fs.unlinkSync 삭제할 파일 경로와 파일 이름을 입력하면 지정된 파일이 삭제됩니다. 🎜🎜🎜Asynchronous fs.unlink🎜🎜rrreee🎜fs.unlink 메소드에는 2개의 매개변수가 있습니다. 첫 번째 매개변수는 파일 경로와 파일 이름이고, 두 번째 매개변수는 삭제 실패를 모니터링하는 콜백 함수입니다. 🎜🎜🎜폴더 삭제🎜🎜🎜🎜폴더를 삭제하기 전에 대상 폴더의 모든 파일을 삭제하세요. 🎜 fs.unlinkSync 또는 fs.unlink를 사용하여 파일을 삭제할 수 있습니다. 🎜🎜🎜Synchronous🎜🎜rrreee🎜🎜Asynchronous🎜🎜rrreee🎜는 폴더 삭제를 위한 동기식 및 비동기식 방법도 있으며, 두 번째 매개변수도 오류 보고서 모니터링을 위한 콜백입니다. 🎜🎜🎜Write data🎜🎜rrreee🎜fs.writeFile 메소드는 파일에 콘텐츠를 쓸 수 있습니다. 파일이 존재하지 않으면 자동으로 생성됩니다. 🎜🎜fs.writeFile 매개변수 설명: 🎜
  • 첫 번째 매개변수: 파일 이름
  • 두 번째 매개변수: 작성된 내용
  • 세 번째 매개변수: 쓰기 모드(추가, 덮어쓰기 등)
  • 네 번째 매개변수: 오류 메시지 모니터링
🎜🎜데이터 읽기🎜🎜rrreee🎜사용fs.readFile 메소드는 데이터를 읽을 수 있습니다. 두 번째 매개변수는 콜백입니다. data는 다시 읽어온 데이터입니다. 🎜🎜다시 읽어온 데이터는 바이너리 유형의 데이터이므로 toString() 메서드를 사용하여 우리가 이해할 수 있는 데이터로 변환해야 한다는 점에 유의해야 합니다. 🎜🎜🎜파일이 있는지 확인하세요🎜🎜rrreee🎜fs.existsSync 메서드를 사용하여 지정된 파일이 있는지 확인하세요. 파일이 있으면 true를 반환하세요. 거짓 . 🎜🎜🎜Summary🎜🎜🎜<code>NodeJS를 백엔드로 사용한다면 파일을 읽고 쓰는 지식에서 벗어날 수 없습니다. 가장 일반적인 기능은 오류 로그 수집 등과 같은 로그를 작성할 수 있습니다. 🎜🎜데이터베이스에 로그를 작성할 수도 있지만 모든 컴퓨터에 동일한 데이터베이스가 설치되어 있는 것은 아닙니다. 하지만 로그를 파일에 기록하면 일반적으로 파일 내용이 다른 컴퓨터에서 쉽게 열릴 수 있습니다. 🎜🎜노드 관련 지식을 더 보려면 🎜nodejs 튜토리얼🎜을 방문하세요! 🎜

위 내용은 Nodejs에서 파일을 읽고 쓰는 방법을 자세히 설명하는 기사의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:juejin.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿