2012-02-08 18 views
0

私は、ディレクトリリストを読み込んだ後、CNCプログラム名/ファイルの内容を読み込む関数を作成しました。それぞれのファイルには複数のプログラム番号があり、それらは "、"で区切られ、objとして渡されます(下記のコードを参照)。私はこれをXMLにエクスポートして、それぞれのプログラム名が別々のエントリにあるデータベースにアップロードしたいと思っています。これを達成する最も簡単な方法は?Powershellと1対多のリレーションシップ/オブジェクト

$obj = New-Object -TypeName PSObject 
$obj | Add-Member -MemberType NoteProperty -Name FullFileName -Value $CNCProgFileName 
$obj | Add-Member -MemberType NoteProperty -Name ProgramName -Value $ProgramName 

答えて

0

あなたが行っているようなカスタムオブジェクトを作成することは良いことです。配列内の多くのものを1つのオブジェクトに関連付けることができるように、配列であるプロパティを作成することをお勧めします。 $obj | select -expand ListOfStuff

$myListOfStuff = @() 
$myListOfStuff += "Stuff" 
$myListOfStuff += "More stuff" 

$obj = New-Object PsObject @{ 
    FullFileName = $CNCProgFileName 
    ProgramName = $ProgramName 
    ListOfStuff = $myListOfStuff 
} 

あなたはそうのような-ExpandPropertySelect-Objectでのもののリストを見ることができます。

+0

お返事ありがとうございます。私は明日前にそれを与え、他の人々のためのフィードバックを提供します。 – resolver101

+0

結果はまだ配列ではなく文字列として出力されます。私は、変数 "$ ProgramName + = $ cncPrograms"にプログラム名を追加するために以下を使用します。これは、$ cncprogramsの型をProgramNameに代入します。ちょうどその値が必要です。これを達成するための最良の方法は何ですか? – resolver101

0

PowreShell 2.0では、ConvertTo-Xmlコマンドレットを使用してオブジェクトからXMLを生成できます。

関連する問題