반응형
PowerShell에서 데이터 세트를 순환하려면 어떻게 해야 합니까?
에서 각 행의 값을 출력하려고 합니다.DataSet:
for ($i=0;$i -le $ds.Tables[1].Rows.Count;$i++)
{
Write-Host 'value is : ' + $i + ' ' + $ds.Tables[1].Rows[$i][0]
}
출력을 제공합니다...
value is : +0+ +System.Data.DataSet.Tables[1].Rows[0][0]
value is : +1+ +System.Data.DataSet.Tables[1].Rows[1][0]
value is : +2+ +System.Data.DataSet.Tables[1].Rows[2][0]
value is : +3+ +System.Data.DataSet.Tables[1].Rows[3][0]
value is : +4+ +System.Data.DataSet.Tables[1].Rows[4][0]
value is : +5+ +System.Data.DataSet.Tables[1].Rows[5][0]
value is : +6+ +System.Data.DataSet.Tables[1].Rows[6][0]
열에서 실제 값을 가져오려면 어떻게 해야 합니까?
PowerShell 문자열 평가에서 DataSet의 ToString()을 호출하고 있습니다.속성(또는 메서드 호출)을 평가하려면 식을 다음에 포함하여 평가를 수행해야 합니다.$()
for($i=0;$i -lt $ds.Tables[1].Rows.Count;$i++)
{
write-host "value is : $i $($ds.Tables[1].Rows[$i][0])"
}
또한.foreach에서는 길이를 확인할 필요 없이 컬렉션 또는 배열을 반복할 수 있습니다.
다시 작성됨(및 컴파일을 위해 편집됨) -
foreach ($Row in $ds.Tables[1].Rows)
{
write-host "value is : $($Row[0])"
}
다음은 실제 예제입니다(현재 위치에서 데이터 세트 구축).
$ds = new-object System.Data.DataSet
$ds.Tables.Add("tblTest")
[void]$ds.Tables["tblTest"].Columns.Add("Name",[string])
[void]$ds.Tables["tblTest"].Columns.Add("Path",[string])
dir | foreach {
$dr = $ds.Tables["tblTest"].NewRow()
$dr["Name"] = $_.name
$dr["Path"] = $_.fullname
$ds.Tables["tblTest"].Rows.Add($dr)
}
$ds.Tables["tblTest"]
$ds.Tables["tblTest"]는 다른 Powershell 개체와 마찬가지로 조작할 수 있는 개체입니다.
$ds.Tables["tblTest"] | foreach {
write-host 'Name value is : $_.name
write-host 'Path value is : $_.path
}
파서에서 문자열을 연결하는 데 문제가 있습니다.사용해 보십시오.
write-host 'value is : '$i' '$($ds.Tables[1].Rows[$i][0])
편집: 큰따옴표를 사용하면 따옴표가 있는 문자열에 식을 포함할 수 있으므로 더 명확할 수 있습니다.
write-host "value is : $i $($ds.Tables[1].Rows[$i][0])"
언급URL : https://stackoverflow.com/questions/804133/how-do-i-loop-through-a-dataset-in-powershell
반응형
'programing' 카테고리의 다른 글
| 두 데이터 프레임 간의 차이 찾기 (0) | 2023.09.05 |
|---|---|
| 부트스트랩 4에서 드롭다운의 화살표를 제거하는 방법은 무엇입니까? (0) | 2023.09.05 |
| AJAX 호출에 의해 삽입된 IE 8에서 HTML5 요소를 "활성화"하는 방법은 무엇입니까? (0) | 2023.09.05 |
| Spring에서 속성의 문자열 배열을 바인딩하는 방법은 무엇입니까? (0) | 2023.09.05 |
| 시간 초과와 함께 사용자 입력 대기 중 (0) | 2023.09.05 |