2017-01-18 4 views
-1

リストのメンバーを動的に作成するヘッダーを作成したいと思います。リストヘッダーを作成して結合する

次に、アレイを作成するためにリストを、エクスポートするためにCSVを組み合わせたいとします。

私はこの上の値が「のSystem.Array」型の変数を受け付けませんが、オブジェクトが一つの連続した文字列ではなく、別の行にある2つのオブジェクトとして表示さ

$a = new-object psobject 
$a | add-member ... 

を試してみました。

私が試してみた:

$a = New-Object System.Collections.Generic.List[System.Object] 
$a.add() 
を、私はこのリストでヘッダーを作成することはできません。

ここで私は、最終的な製品が

列の名前は、ドメイン内の別のサーバーから引っ張られ、そしてダイナミックな長さに私は実行するたびになります
col1  col2  col3 
admin karl  john 
jake  rupert pinko 
drumpf   deckard 

に見えるようにしたいもののサンプルがあります私はそれをcsvとしてエクスポートしたいと思っています。

おかげで、

+0

のようなものを試してみてください? – JPBlanc

+0

'Transpose-Data col1、col2、col3( 'admin'、 'jake'、 'drumpf')、( 'karl'、 'rupert')、( 'john'、 'pinko'、 'deckard')' http: //stackoverflow.com/a/33650945 – PetSerAl

+0

情報ありがとうございます - しかし、リストが動的なので動作しません - そして、transpose-dataにsystem.array型の変数を送ります - 項目を1つの長い文字列としてリストします別々の行にそれは私が以前持っていたのと同じ問題です。 –

答えて

-1

はあなたが何をしたいのかの簡単なサンプルを提供するために、あなたの質問を編集することができ、この

#solution 1 
[email protected]() 
$yourlist+=[pscustomobject]@{Header1="Val1.1";Header2=Get-Date;Header3=15} 
$yourlist+=[pscustomobject]@{Header1="Val1.2";Header2=(Get-Date).AddDays(1);Header3=30} 
$yourlist 

#solution 2 
[email protected]() 
$yourlist+=New-Object -TypeName "psobject" -Property @{Header1="Val2.1";Header2=Get-Date;Header3=15} 
$yourlist+=New-Object -TypeName "psobject" -Property @{Header1="Val2.2";Header2=(Get-Date).AddDays(1);Header3=30} 
$yourlist 

#solution 3 
$yourlist = New-Object System.Collections.Generic.List[System.Object] 
$yourlist.add((New-Object -TypeName "psobject" -Property @{Header1="Val3.1";Header2=Get-Date;Header3=15})) 
$yourlist.add((New-Object -TypeName "psobject" -Property @{Header1="Val3.2";Header2=(Get-Date).AddDays(1);Header3=30})) 
$yourlist 

#solution 4 
$element1 = new-object psobject 
$element1 | add-member -MemberType NoteProperty -Name "Header1" -Value "Val4.1" 
$element1 | add-member -MemberType NoteProperty -Name "Header2" -Value (Get-Date) 
$element1 | add-member -MemberType NoteProperty -Name "Header3" -Value 15 

$element2 = new-object psobject 
$element2 | add-member -MemberType NoteProperty -Name "Header1" -Value "Val4.2" 
$element2 | add-member -MemberType NoteProperty -Name "Header2" -Value (Get-Date).AddDays(1) 
$element2 | add-member -MemberType NoteProperty -Name "Header3" -Value 30 

[email protected]() 
$yourlist+=$element1 
$yourlist+=$element2 
$yourlist 
+0

-valueパラメーターに入れた型system.arrayの値。配列のすべてのオブジェクトをそれ自身の別個の変数に置くように要求していない限り、これは許容される方法ではありません。名前がすでに存在するため、 'name'パラメータがadd-memberコマンドでエラーになるため、foreachループを使用してオブジェクトを分離することもできません。 –

+0

この例は私のPCで正常に動作し、あなたの質問と例を満足させます。列のリストが動的な場合は、ソリューション4を使用できますが、私のコードを再読み込みして、配列に疑問の余地はありません。 – Esperento57

関連する問題