file selector
有些时候需要操作本地文件系统,例如选择某个文件、将文件保存到指定位置等。
保存文件到指定位置
使用showSaveDialog
,它会打开文件选择器弹窗,选择了保存路径后点击确定会返回选中的路径,如果点击取消会返回undefined
。
// 让用户手动选择文件的的存储路径
const uri = await vscode.window.showSaveDialog({
filters: {
zip: ['zip'], // 文件类型过滤
},
});
if (!uri) {
return false;
}
writeFile(uri.fsPath); // 写入文件
文件选择
showOpenDialog
同样会打开文件选择器弹窗,不过这次是用于选择文件,如果有选择文件会返回选中的文件路径,反之返回undefined
。
// showOpenDialog返回的是文件路径数组
const uris = await window.showOpenDialog({
canSelectFolders: false, // 是否可以选择文件夹
canSelectMany: false, // 是否可以选择多个文件
filters: {
json: ['json'], // 文件类型过滤
},
});
if (!uris || !uris.length) {
return;
}
handleFiles(uris);