2014-12-01 2 views
0

텍스트 파일의 내용을 DataGridView에 쓰려고합니다. 배열 선을 반복 할 경우 문자열이 표시됩니다. 배열을 datagridview에 추가하면 파일, 행 번호 및 문자열 길이의 속성을 볼 수 있지만 원하는 문자열은 볼 수 없습니다.Powershell 문자열 배열 to DataGridview

$LogFileRaw = Get-Content($selected) 

내가 닷넷을 사용하는 경우, 그냥 문자열이

$LogFileRaw = [System.IO.File]::ReadAllLines($selected) 

내가 제대로 DataGridView 컨트롤에 문자열 배열을 바인딩하지 않은 것으로 생각 길이를 참조하십시오. Powershell이 ​​아닌 다른 언어로이 작업을 수행 한 사례를 발견했습니다. 누군가 Powershell 예제를 가르쳐 주거나 내가 잘못하고있는 것을 설명 할 수 있습니까? 양해 해 주셔서 감사합니다.

답변

1

당신은 Get-Content를 사용할 수 있지만 '열에게'이름 로그 파일 내용을 줄 필요가 :

$LogFileRaw = Get-Content($selected) | % { 
    New-Object PSObject -Property @{ 
     "Log Entry" = $_ 
    } 
} 

그런 다음 당신이 DataGridView에이를 추가 할 수 있습니다 :

$array = New-Object System.Collections.ArrayList 
$array.AddRange($LogFileRaw) 

$dataGridView = New-Object System.Windows.Forms.DataGridView 
$dataGridView.DataSource = $array 

이 많이 ConvertFrom-Csv의 -header 매개 변수를 사용할 수 있기 때문에 .csv 파일을 가져올 때 더 간단합니다.

+0

정말 고마워요. 이 얼마나 우아한 솔루션. 나는 PS에서 newb입니다. 이것은 정말로 나를 도왔다. –