Powershell 无法将参数绑定到参数';路径';因为它是一个空数组
这是我的.CSV文件: 我使用以下代码从.CSV读取数据。从表中读取的数据将转换为正态变量,以便我可以进行一些计算Powershell 无法将参数绑定到参数';路径';因为它是一个空数组,powershell,csv,Powershell,Csv,这是我的.CSV文件: 我使用以下代码从.CSV读取数据。从表中读取的数据将转换为正态变量,以便我可以进行一些计算 $ScriptPath = Split-Path $MyInvocation.MyCommand.Path $TransportOptions = $ScriptPath + "\TransportOptions.csv" $TransportOptionsID = @() $TransportOptions = @() $TransportEnergy = @() $CO2
$ScriptPath = Split-Path $MyInvocation.MyCommand.Path
$TransportOptions = $ScriptPath + "\TransportOptions.csv"
$TransportOptionsID = @()
$TransportOptions = @()
$TransportEnergy = @()
$CO2 = @()
Import-Csv $TransportOptions |`
ForEach-Object {
$TransportOptionsID += $_."TransportOptionsID"
$TransportOptions += $_.TransportOptions
$TransportEnergy += $_.TransportEnergy
$CO2 += $_.CO2
}
$InputID = Read-Host -Prompt "TransportOptionsID"
if ($TransportOptionsID -contains $InputID)
{
$Where = [array]::IndexOf($TransportOptionsID, $InputID)
$InputName = $TransportOptions[$Where]
if ($TransportOptions -contains $InputName)
{
$Where = [array]::IndexOf($TransportOptions, $InputName)
$InputEnergy = $TransportEnergy[$Where]
$HTransportEnergy = [double]$InputEnergy
if ($TransportEnergy -contains $InputEnergy)
{
$Where = [array]::IndexOf($TransportEnergy, $InputEnergy)
$CO2transport = [double]$CO2[$Where]
}
}
}
但我得到的是错误:
ERROR: Import-Csv : Cannot bind argument to parameter 'Path' because it is an empty array.
ERROR:
CO2estimatorUserInputs.ps1 (132, 11): ERROR: At Line: 132 char: 11
ERROR: + Import-Csv <<<< $TransportOptions |`
ERROR: + CategoryInfo : InvalidData: (:) [Import-Csv], ParameterBindingValidationException
ERROR: + FullyQualifiedErrorId : ParameterArgumentValidationErrorEmptyArrayNotAllowed,Microsoft.PowerShell.Commands.ImportCsvCommand
ERROR:
错误:导入Csv:无法将参数绑定到参数“Path”,因为它是空数组。
错误:
CO2estimatorUserInputs.ps1(132,11):错误:在第132行字符:11
错误:+导入Csv是的,您遗漏了一些内容:
$TransportOptions = $ScriptPath + "\TransportOptions.csv"
$TransportOptions = @() # This
Import-Csv $TransportOptions |`
您为变量分配了CSV路径,然后将其重新分配为空数组,然后尝试将其传递给导入CSV
是的,您遗漏了一些内容:
$TransportOptions = $ScriptPath + "\TransportOptions.csv"
$TransportOptions = @() # This
Import-Csv $TransportOptions |`
将变量指定为CSV路径,然后将其重新指定为空数组,然后再尝试将其传递到导入CSV