方法解释
ensureFileExistence(filePath)
:
- 接受一个文件路径作为参数。
- 使用
path.dirname(filePath)
获取文件目录路径。 - 使用
fs.existsSync
和fs.mkdirSync
确保目录存在。 - 使用
fs.existsSync
和fs.writeFileSync
确保文件存在。
使用示例
- 可以调用
ensureFileExistence
方法,并传递你要检查和创建的文件路径。
以下是将文件和目录检查与创建操作封装到一个方法中的示例:
const fs = require('fs');
const path = require('path');
function ensureFileExistence(filePath) {
// 获取文件目录路径
const dirPath = path.dirname(filePath);
// 确保目录存在
if (!fs.existsSync(dirPath)) {
fs.mkdirSync(dirPath, { recursive: true });
console.log(`Directory ${dirPath} created.`);
} else {
console.log(`Directory ${dirPath} already exists.`);
}
// 确保文件存在
if (!fs.existsSync(filePath)) {
fs.writeFileSync(filePath, '', 'utf8'); // 创建空文件
console.log(`File ${filePath} created.`);
} else {
console.log(`File ${filePath} already exists.`);
}
}
// 使用示例
// 文件路径
// const filePath = path.join(__dirname, './i18n/langs/language.yaml');
const filePath = path.resolve('./i18n/langs/language.yaml');
ensureFileExistence(filePath);