我試着寫一個腳本,工作過程如下:解析空格分隔的字段
我的輸入是8行8列,充滿了價值0
或1
一個文本文件,用一個空格字符,每個分隔列。
我需要檢查每行中的第4號和輸出false
,如果是0
,並且true
,如果是1
。
我此刻的代碼如下所示:
param($fname)
$rows = (Get-Content $fname)
for ($i=0;$i -lt $rows.Length;$i++)
{
if ($rows[$i][6] -eq 1)
{
Write-Host "true"
}
if ($rows[$i][6] -ne 1)
{
Write-Host "false"
}
}
於是我就用[$i][6]
,因爲我得到的是這樣的4號,佔作爲分隔空間的數量。
我檢查,並認爲這是完美的,但不知何故,說false
爲每線,但是當我Write-Host
$rows[0][6]
是1
。
'1' - >' '1',[0]' – PetSerAl
非常感謝你:) –
你是一個性格比較整數。嘗試運行'$ rows [$ i] [6] .GetType()'來查看PS用於數據的類型。你也可以刪除最後一個'if'並將其更改爲'else',因爲如果它不是1,那麼它是錯誤的。 – NooGuy