Nodejs – 无法读取文件目录中有空格的文本文件

我正在尝试读取放置在visuals studio 2017项目文件夹中的文件。 由于文件path中有一个空格,下面的代码总是返回'Error - File does not Exists' 。我尝试在path上放一个双引号,并用%20replace所有的空格。不幸的是,这两个都没有为我工作

有人能帮我解决吗?

文件path –

 C:/Users/Guest/Documents/Visual Studio 2017/Projects/help.txt 

码:

 if (fs.existsSync(filePath)) { fs.readFile(filePath, 'utf8', function (err, contents) { if (err) { logger.error("Error while reading the file - " + filePath) next("Error while reading the file") } else { next(contents); } }); } else { logger.error("File does not exist in path - " + filePath) next("Error - File does not Exists") } 

转到您的目录C:/Users/Guest/Documents/并在控制台中执行dir /x命令。 您将获得文件夹Visual Studio 2017简写名称,如下所示:

 02-11-2015 22:50 <DIR> VISUAL~1 Visual Studio 2005 05-11-2015 20:40 <DIR> VISUAL~2 Visual Studio 2008 27-01-2016 23:35 <DIR> VISUAL~3 Visual Studio 2010 13-08-2017 00:42 <DIR> VISUAL~4 Visual Studio 2012 04-02-2017 00:02 <DIR> VI3A49~1 Visual Studio 2013 15-10-2017 02:06 <DIR> VIDE5F~1 Visual Studio 2015 

阅读时在文件path中使用所需的快捷方式名称。

另一个解决办法是逃避空间的性格。

 path = filePath.split(/\ /).join('\ ');