2014-12-01 4 views
0

Я пытаюсь написать содержимое текстового файла в datagridview. Если я повторяю строки массива, я вижу строки. Когда я добавляю массив в datagridview, я вижу свойства файла, номера строк и длины строк, но не строки, которые все, что я хочу.Powershell string array to datagridview

$LogFileRaw = Get-Content($selected) 

Если я использую .NET, я просто вижу струна длины

$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 

Это гораздо проще при импорте CSV-файла, поскольку вы можете использовать параметр -header ConvertFrom-Csv.

+0

Большое вам спасибо. Какое изящное решение. Я новичок в PS. Это ДЕЙСТВИТЕЛЬНО помогло мне. –