在Nodejs中读写文件的方法有哪些?

85 阅读1分钟

"```markdown

Node.js中读写文件的方法

Node.js 提供了多种方法来读写文件,最常用的模块是 fs(文件系统模块)。以下是一些基本的读写文件的方法。

1. 异步读取文件

使用 fs.readFile 方法可以异步读取文件内容。

const fs = require('fs');

fs.readFile('example.txt', 'utf8', (err, data) => {
    if (err) {
        console.error(err);
        return;
    }
    console.log(data);
});

2. 同步读取文件

使用 fs.readFileSync 方法可以同步读取文件内容。

const fs = require('fs');

try {
    const data = fs.readFileSync('example.txt', 'utf8');
    console.log(data);
} catch (err) {
    console.error(err);
}

3. 异步写入文件

使用 fs.writeFile 方法可以异步写入文件。

const fs = require('fs');

const content = 'Hello, World!';

fs.writeFile('output.txt', content, (err) => {
    if (err) {
        console.error(err);
        return;
    }
    console.log('File has been written.');
});

4. 同步写入文件

使用 fs.writeFileSync 方法可以同步写入文件。

const fs = require('fs');

const content = 'Hello, World!';

try {
    fs.writeFileSync('output.txt', content);
    console.log('File has been written.');
} catch (err) {
    console.error(err);
}

5. 追加内容到文件

使用 fs.appendFile 方法可以异步追加内容到文件。

const fs = require('fs');

const content = 'This is additional content.\
';

fs.appendFile('output.txt', content, (err) => {
    if (err) {
        console.error(err);
        return;
    }
    console.log('Content has been appended to file.');
});

6. 同步追加内容到文件

使用 fs.appendFileSync 方法可以同步追加内容到文件。

const fs = require('fs');

const content = 'This is additional content.\
';

try {
    fs.appendFileSync('output.txt', content);
    console.log('Content has been appended to file.');
} catch (err) {
    console.error(err);
}

7. 删除文件

使用 fs.unlink 方法可以异步删除文件。

const fs = require('fs');

fs.unlink('output.txt', (err) => {
    if (err) {
        console.error(err);
        return;
    }
    console.log('File has been deleted.');
});

8. 同步删除文件

使用 fs.unlinkSync 方法可以同步删除文件。

const fs = require('fs');

try {
    fs.unlinkSync('output.txt');
    console.log('File has been deleted.');
} catch (err) {
    console.error(err);
}

9. 文件状态

使用 fs.stat 方法可以获取文件状态信息。

const fs = require('fs');

fs.stat('example.txt', (err, stats) => {
    if (err) {
        console.error(err);
        return;
    }
    console.log(stats);
});

10. 同步获取文件状态

使用 fs.statSync 方法可以同步获取文件状态信息。

const fs = require('fs');

try {
    const stats = fs.statSync('example.txt');
    console.log(stats);
} catch (err) {
    console.error(err);
}