>  기사  >  웹 프론트엔드  >  Node.js에서의 파일 작성에 대해 이야기해 보세요.

Node.js에서의 파일 작성에 대해 이야기해 보세요.

青灯夜游
青灯夜游앞으로
2020-12-04 17:57:538100검색

이 글에서는 Node.js에서 파일을 작성하는 방법을 소개합니다. 도움이 필요한 친구들이 모두 참고할 수 있기를 바랍니다.

Node.js에서의 파일 작성에 대해 이야기해 보세요.

관련 추천: "node js tutorial"

파일을 읽고 파일을 쓰는 것은 매우 간단합니다. 두 작업은 거의 일대일로 대응됩니다

fs.writeFile

fs.writeFile(file, data[, options], callback)fs.writeFile(file, data[, options], callback)

  • file:文件名或文件描述符

  • data:常用的主要是 string 和 buffer

  • callback(err)

当 file 是文件名时,则异步地写入数据到文件,如果文件已存在,则覆盖文件内容

const fs = require('fs');

const data = Buffer.from('Hello, Node.js');
fs.writeFile('./test.txt', data, err => {
  if (err) throw err;
  console.log('文件已被保存');
});

fs.write

fs.write 有两种重载

  • fs.write(fd, buffer[, offset[, length[, position]]], callback):参数含义和 fs.read 几乎相同

  • fs.write(fd, string[, position[, encoding]], callback):只能把字符串内容全部写入文件

两个的区别就是适用 buffer 可以治写入 buffer 中 offset ~ length + offset 的内容,而使用字符串只能把字符串内容全部写入文件

const fs = require('fs');

const data1 = Buffer.from('Hello, Node.js');
const data2 = 'Hello, Node.js';

const fd = fs.openSync('./test.txt', 'w');
console.log(fd)

fs.write(fd, data1, err => {
  if (err) throw err;
  console.log('data1 已被写入');
});

fs.write(fd, data2, err => {
  if (err) throw err;
  console.log('data2 已被写入');
});

setTimeout(() => {
  fs.close(fd, console.log);
}, 100);

fs.appendFile

fs.appendFile(path, data[, options], callback) 将数据追加到文件尾部,如果文件不存在则创建该文件

const fs = require('fs/promises');

const data1 = Buffer.from('Hello,');
const data2 = Buffer.from(' Node.js');

fs.appendFile('./test.txt', data1)
  .then(() => {
    fs.appendFile('./test.txt', data2);
    console.log('文件内容追加完成');
  });

fs.createWriteStream

fs.createWriteStream(path[, options])


    file: 파일 이름 또는 파일 설명자
    • 데이터: 가장 일반적으로 사용되는 것은 문자열과 버퍼입니다
    • callback(err)

    파일 이름이 file인 경우 파일이 이미 존재하는 경우 비동기적으로 파일에 데이터를 씁니다. 그런 다음 파일 콘텐츠 덮어쓰기

const fs = require('fs');

fs.createReadStream('./test.txt')
  .pipe(fs.createWriteStream('./copy.txt'));

fs.write

fs.write에는 두 개의 오버로드가 있습니다

    fs .write(fd, buffer[, offset[, length[, position]]], callback): 매개변수 의미는 fs.read🎜🎜🎜🎜fs.write(fd, string[, position[, 인코딩]], 콜백): 문자열 내용 전체만 파일에 쓸 수 있습니다🎜🎜🎜🎜둘의 차이점은 버퍼를 적용하면 offset ~ length + offset의 내용을 파일에 쓸 수 있다는 점입니다. 버퍼, 문자열만 사용하는 동안 모든 문자열 내용을 파일🎜rrreee

    fs.appendFile🎜🎜fs.appendFile(path, data[, options], callback)에 쓸 수 있습니다. > Tail 파일에 데이터를 추가합니다. 파일이 없으면 파일을 만듭니다🎜rrreee

    fs.createWriteStream🎜🎜fs.createWriteStream(path[, options]) 쓰기 가능한 파일을 생성하는 데 사용됩니다. 스트림, 옵션 및 fs.createReadStream은 거의 동일합니다🎜옵션(더 일반적으로 사용되는 옵션)🎜🎜🎜fd: 기본값은 fd가 지정되면 경로 매개변수가 무시됩니다. 지정된 파일 설명자가 사용됩니다(열기 이벤트는 다시 트리거되지 않습니다)🎜🎜mode: 기본값 0o666🎜🎜autoClose: 기본값: true, 'error' 또는 'finish' 이벤트가 발생하면 파일 설명자는 자동으로 닫힘🎜🎜start: 파일이 쓰기 시작하는 위치, 기본값은 설정되지 않음 Coverage🎜🎜🎜읽을 수 있는 스트림의 내용을 쓰기 가능한 스트림에 쓰는 것은 매우 간단합니다🎜rrreee🎜스트림 소개 및 추가 용도 자세한 내용은 버퍼 및 스트림 장에서 소개됩니다🎜🎜더 많은 프로그래밍 관련 지식을 보려면 다음을 방문하세요:🎜프로그래밍 교육🎜! ! 🎜

    위 내용은 Node.js에서의 파일 작성에 대해 이야기해 보세요.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

    성명:
    이 기사는 cnblogs.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제