Javascript 如何使用nodejs获取父文件夹名称
如何从nodejs中的worspacefolder路径获取父文件夹名称。我尝试过,但没有工作。有人能找到我在哪里出错的吗?文件夹名称应为rainJavascript 如何使用nodejs获取父文件夹名称,javascript,node.js,visual-studio-code,Javascript,Node.js,Visual Studio Code,如何从nodejs中的worspacefolder路径获取父文件夹名称。我尝试过,但没有工作。有人能找到我在哪里出错的吗?文件夹名称应为rain var pathname=vscode.workspace.workspaceFolders[0].uri; /* c:/xampp/htdocs/rain/tree */ var prevFolder= path.dirname(pathname).split(path.sep).pop(); console.log(prev
var pathname=vscode.workspace.workspaceFolders[0].uri;
/* c:/xampp/htdocs/rain/tree */
var prevFolder= path.dirname(pathname).split(path.sep).pop();
console.log(prevFolder)
您可以从
process.cwd()
获取当前工作目录;之后,您可以根据自己的选择使用它。我不知道“vscode.workspace.workspaceFolders[0].uri”命令。
但如果它返回“c:/xampp/htdocs/projects/rain/tree”,并且您需要tree,则可以执行以下操作:
var pathname=vscode.workspace.workspaceFolders[0].uri
var prevFolder= pathname.split("/");
console.log(prevFolder[prevFolder.length-1])
如果您不使用path.sep,您自己的解决方案将起作用(因为您在Windows上,它被设置为“\”而不是“/”:
var prevFolder= path.dirname(pathname).split('/').pop();
但为了完全避免分隔符问题,您可以使用:
var prevFolder= path.basename(path.dirname(pathname));
可能也比拆分方法更有效。保持简单:
var prevFolder = path.basename(path.dirname(pathname));
不需要数组摆弄。像这样尝试
path.dirname(filename).split(path.sep).pop()
如果我们使用进程,我们无法获取工作区文件夹路径,让我检查一下。1 minNo..不工作..像这样:/c:/xampp/htdocs/好的,我误解了。这就是您所需要的
path.basename(path.dirname(pathname))
不需要数组操作。您要求指出您的错误。您得到的答案与您显示的代码有关。该代码对您的问题至关重要。似乎是您无意中删除了它。因此,我取消了该编辑。请记住,即使在收到答案后,问题也需要有意义。尤其是在需要保持这些答案的有效性。你能发布你对那个问题的答案吗?哇,你的编辑看起来和我之前的答案非常相似……谢谢。@马克,在编辑我的答案时没有看到你的答案。它们实际上是完全相同的。这是一个强有力的迹象,表明这可能是正确的方法;-)