如何在Node.js中获取最大路径长度

omvjsjqw  于 2023-01-25  发布在  Node.js
关注(0)|答案(1)|浏览(140)

在Node.js中,我怎么知道在当前操作系统中最大可能的路径长度是多少?在我知道它在Windows中是260个字符,在Linux中是4096个字节,在macOS中是1024个字节。但是有什么方法可以在Node.js中得到这个值呢?此外,当fs模块因为文件名长度超过支持的限制而无法创建文件时,错误代码说“没有这样的文件或目录”,这没有给出关于这个限制的提示。

gdrx4gfi

gdrx4gfi1#

在Node.js中,您可以使用path.posix.seppath.win32.sep属性来确定当前操作系统的最大路径长度。
path.posix.sep属性返回POSIX系统(包括Linux和macOS)的路径段分隔符,并设置为/。
path.win32.sep属性返回Windows的路径段分隔符,并设置为。
要获取当前操作系统的最大路径长度,可以使用path.posix.seppath.win32.sep以及path.posix.sep.lengthpath.win32.sep.length检查路径分隔符中的字符数。
关于错误消息,您可以使用fs.constants.ERR_CODE.ENAMETOOLONG来检查当您尝试创建文件时错误代码是否等于ENAMETOOLONG,这将给予您文件名长度超过支持的限制。
您也可以使用fs.access方法和fs.constants.F_OK标志来检查文件是否已经存在,如果它抛出错误ENAMETOOLONG,您将知道路径太长。

相关问题