fs.realPath()方法用于计算给定路径的规范路径名。它通过解决.
,..
以及路径中的符号链接。
用法:
fs.realpath( path, options, callback )
参数:此方法接受上述和以下所述的三个参数:
- path:它包含必须解析的目录的路径。它可以是字符串,缓冲区或URL。
- options:它是一个字符串或对象,可用于指定将影响操作的可选参数。它具有一个可选参数:
- encoding:它是一个字符串,用于定义解析路径的编码。
- callback:执行该方法时将调用该函数。
- err:如果操作失败,将引发此错误。
- resolvedPath:它是代表解析路径的字符串或缓冲区。
以下示例说明了Node.js中的fs.realPath()方法:
范例1:本示例使用fs.realPath()方法获取给定路径的规范路径。
// Node.js program to demonstrate the
// fs.realPath() method
// Import the filesystem module
const fs = require('fs');
console.log("Current Directory Path:", __dirname);
// Finding the canonical path
// one directory up
path1 = __dirname + "\\..";
fs.realpath(path1, (error, resolvedPath) => {
if (error) {
console.log(error);
}
else {
console.log("One directory up resolved"
+ " path is:", resolvedPath);
}
});
// Finding the canonical path
// two directories up
path2 = __dirname + "\\..\\..";
fs.realpath(path2, (error, resolvedPath) => {
if (error) {
console.log(error);
}
else {
console.log("Two directories up resolved"
+ " path is:", resolvedPath);
}
});
输出:
Current Directory Path:G:\tutorials\nodejs-fs-realPath Two directories up resolved path is:G:\ One directory up resolved path is:G:\tutorials
范例2:本示例使用fs.realPath()方法演示不同的编码类型。
// Node.js program to demonstrate the
// fs.realPath() method
// Import the filesystem module
const fs = require('fs');
path = __dirname + "\\..";
// Getting the canonical path in utf8 encoding
fs.realpath(path, {encoding:"utf8"}, (error, resolvedPath) => {
if (error) {
console.log(error);
}
else {
console.log("The resolved path is:", resolvedPath);
}
});
// Getting the canonical path in hex encoding
fs.realpath(path, {encoding:"hex"}, (error, resolvedPath) => {
if (error) {
console.log(error);
}
else {
console.log("The resolved path is:", resolvedPath);
}
});
// Getting the canonical path in base64 encoding
fs.realpath(path, {encoding:"base64"}, (error, resolvedPath) => {
if (error) {
console.log(error);
}
else {
console.log("The resolved path is:", resolvedPath);
}
});
输出:
The resolved path is:G:\tutorials The resolved path is:473a5c7475746f7269616c73 The resolved path is:RzpcdHV0b3JpYWxz
参考: https://nodejs.org/api/fs.html#fs_fs_realpath_path_options_callback
相关用法
- Node.js GM blur()用法及代码示例
- Node.js GM drawRectangle()用法及代码示例
- Node.js GM sharpen()用法及代码示例
- Node.js GM drawPolyline()用法及代码示例
- Node.js GM drawEllipse()用法及代码示例
- Node.js GM drawCircle()用法及代码示例
- Node.js GM drawPolygon()用法及代码示例
注:本文由纯净天空筛选整理自sayantanm19大神的英文原创作品 Node.js | fs.realpath() Method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。