首页 > 解决方案 > 使用 VS Code API 创建和保存具有自定义内容和名称的文件

问题描述

我们正在开发一个新的 VS Code 扩展,我们希望在其中:

  1. 使用提供的内容在 VS Code 编辑器中创建并打开一个新文件。
  2. 使用自定义名称保存该文件,而不提示用户使用已知路径

目前我们正在通过VSCode API执行此操作,但它并没有完全达到目的,因为它向用户显示“保存”对话框:

workspace.openTextDocument({ content: yamlContent, language: "yaml" }).then(doc => {
    window.showTextDocument(doc);
    doc.save()
})

另外,要确认一个附带问题:有没有办法通过VSCode API获取工作区外文件的相对文件路径?(我们现在为此使用Node JS Path )

标签: visual-studio-codevscode-extensions

解决方案


以下是我如何实现它以实现所需的行为:

await workspace.fs.writeFile(fileUri, new TextEncoder().encode(yamlContent));
window.showTextDocument(fileUri, { preview: false });

推荐阅读