将字符串文件路径转换为 ​​vscode.Uri

tre*_*ode 9 visual-studio-code vscode-extensions

有没有办法将类型的对象转换stringvscode.Uri?在我的情况下,我有一个字符串,vscode.workspace.rootPath因为我想加入 a am 作为 that 的部分路径的字符串rootPath。在我使用的自定义类型中,我正在扩展vscode.TreeItem具有Uri类型vscode.Uri路径的属性。

由于我vscode.uri("c:\\some\\path")不知道的原因,编译器不喜欢。

这是一种甚至可以相互转换的类型吗?

Gam*_*a11 15

您可以使用静态Uri.file(path)函数vscode.Uri从字符串文件路径创建一个:

let uri = vscode.Uri.file("c:\\some\\path");
Run Code Online (Sandbox Code Playgroud)

要再次以字符串形式获取路径,请使用fsPath

let path = uri.fsPath; // c:\some\path
Run Code Online (Sandbox Code Playgroud)

需要注意的是,Windows 路径中的驱动器号是标准化的。因此,在进行这样的往返时,c:即使您最初以C:. 它还将替换/\取决于当前平台。