当使用Node.js的fs
(文件系统)模块时,你可以执行各种文件和文件夹操作。以下是一些常见操作的详细解释:
1. 异步写入文件:
const fs = require('fs');
const contentToWrite = 'Hello, World!';
fs.writeFile('example.txt', contentToWrite, 'utf8', (err) => {
if (err) {
console.log('写入失败!');
return;
} else {
console.log('写入成功!');
}
});
2. 同步写入文件:
const fs = require('fs');
const contentToWrite = 'Hello, World!';
try {
fs.writeFileSync('example.txt', contentToWrite, 'utf8');
console.log('写入成功!');
} catch (err) {
console.log('写入失败!');
}
3. 追加写入文件:
const fs = require('fs');
const contentToAppend = '\nAppending new content!';
fs.appendFile('example.txt', contentToAppend, 'utf8', (err) => {
if (err) {
console.log('写入失败!');
return;
} else {
console.log('写入成功!');
}
});
4. 流式写入文件:
const fs = require('fs');
const stream = fs.createWriteStream('example.txt', 'utf8');
const contentToWrite = 'Using streams to write content.';
stream.write(contentToWrite);
stream.end();
stream.on('finish', () => {
console.log('写入成功!');
});
5. 异步文件读取:
const fs = require('fs');
fs.readFile('example.txt', 'utf8', (err, data) => {
if (err) {
console.error(err);
} else {
console.log('File content:', data);
}
});
6. 同步文件读取:
const fs = require('fs');
try {
const data = fs.readFileSync('example.txt', 'utf8');
console.log('File content:', data);
} catch (err) {
console.error(err);
}
7. 文件复制:
const fs = require('fs');
fs.copyFile('source.txt', 'destination.txt', (err) => {
if (err) {
console.error(err);
} else {
console.log('文件复制成功.');
}
});
8. 文件重命名:
const fs = require('fs');
fs.rename('oldName.txt', 'newName.txt', (err) => {
if (err) {
console.error(err);
} else {
console.log('文件重命名成功');
}
});
9. 文件移动:
const fs = require('fs');
fs.rename('sourceFolder/file.txt', 'destinationFolder/file.txt', (err) => {
if (err) {
console.error(err);
} else {
console.log('文件移动成功');
}
});
10. 文件删除:
const fs = require('fs');
fs.unlink('fileToDelete.txt', (err) => {
if (err) {
console.error(err);
} else {
console.log('文件删除成功.');
}
});
11. 文件夹操作:
创建文件夹:
const fs = require('fs');
fs.mkdir('newFolder', (err) => {
if (err) {
console.error(err);
} else {
console.log('文件夹创建成功.');
}
});
删除文件夹:
const fs = require('fs');
fs.rmdir('folderToDelete', (err) => {
if (err) {
console.error(err);
} else {
console.log('文件夹删除成功.');
}
});