Node.js fs-extra ensureFileSync()函数
ensureFileSync()函数是 ensureFile()函数的同步版本。该函数确保文件存在,如果文件不存在,它将由函数创建。如果请求的文件位于不存在的目录中,则该目录和其中的文件将由函数本身创建。如果文件已经存在,则不会修改。 createFileSync()函数也可以用来代替 ensureFileSync()函数,结果是一样的。
句法:
fs.ensureFileSync(file)
要么
fs.createFileSync(file)
参数:
- file:它是一个包含文件路径的字符串。
返回值:它不返回任何东西。
按照以下步骤实现该函数:
- 可以使用以下命令安装该模块:
npm install fs-extra
安装模块后,您可以使用以下命令检查已安装模块的版本:
npm ls fs-extra
创建一个名为 index.js 的文件,并使用以下命令在文件中使用 fs-extra 模块:
const fs = require('fs-extra');
要运行该文件,请在终端中写入以下命令:
node index.js
项目结构:项目结构将如下所示。
示例 1:
index.js
// Requiring module
const fs = require("fs-extra");
// Function to check
// if file exists
// or not
const fileExists = (file) => {
if (fs.existsSync(file)) {
return "File exists";
} else {
return "File do not exist";
}
};
// This file already
// exist so function
// will not do anything
const file = "file.txt";
// Checking before
// calling function
const before = fileExists(file);
console.log(`Before function call ${before}`);
// Function call
fs.ensureFileSync(file);
// Checking after calling function
const after = fileExists(file);
console.log(`After function call ${after}`);
index.js
// Requiring module
const fs = require("fs-extra");
// Function to check
// if file exists
// or not
const fileExists = (file) => {
if (fs.existsSync(file)) {
return "File exists";
} else {
return "File do not exist";
}
};
// This file and directory
// do not exist so both
// will be created
const file = "dir/file.txt";
// Checking before
// calling function
const before = fileExists(file);
console.log(`Before function call ${before}`);
// Function call
fs.ensureFileSync(file);
// Checking after calling function
const after = fileExists(file);
console.log(`After function call ${after}`);
输出:
示例 2:
index.js
// Requiring module
const fs = require("fs-extra");
// Function to check
// if file exists
// or not
const fileExists = (file) => {
if (fs.existsSync(file)) {
return "File exists";
} else {
return "File do not exist";
}
};
// This file and directory
// do not exist so both
// will be created
const file = "dir/file.txt";
// Checking before
// calling function
const before = fileExists(file);
console.log(`Before function call ${before}`);
// Function call
fs.ensureFileSync(file);
// Checking after calling function
const after = fileExists(file);
console.log(`After function call ${after}`);
输出:
参考: https://github.com/jprichardson/node-fs-extra/blob/HEAD/docs/ensureFile-sync.md