我需要在需要文件上传操作的地方进行API调用,我如何提示用户从资源管理器中选择文件并在存储在变量中后使用路径。我发现了类似的问题,但它只适用于文件夹。
在Windows上,您可以利用OpenFileDialog
Windows Forms组件:
function Select-File {
param([string]$Directory = $PWD)
$dialog = [System.Windows.Forms.OpenFileDialog]::new()
$dialog.InitialDirectory = (Resolve-Path $Directory).Path
$dialog.RestoreDirectory = $true
$result = $dialog.ShowDialog()
if($result -eq [System.Windows.Forms.DialogResult]::OK){
return $dialog.FileName
}
}
然后像这样使用:
$path = Select-File
if(Test-Path $path){
Upload-File -Path $path
}
Mathias的回答很好,只是有一个问题。
如本文所述,首先需要加载System.Windows.Forms
程序集!