この記事は2008/01/23にわんくまブログで書いたものです。
データを取得してXMLファイルへ保存する(Oracle) (Windows PowerShell Tips)
データを取得してXMLファイルへ保存する その2(Oracle) (Windows PowerShell Tips)
で、Oracleから取得したデータをXML出力する例を紹介しました。
XMLを出力しただけでは見るのが不便なので、簡易XMLビューアを作ってみました。実行例は下記のとおりです。
View-Xml.ps1
#=============================================================================== # View-Xml: XMLファイルを読み込んで表示する(簡易XMLViewer) # # 使用例 # PS > View-Xml XMLファイルパス # # copyright HIRO's.NET(http://hiros-dot.net/) #=============================================================================== function global:View-Xml { Param($XmlFile) #パスが指定されているか? if ( $XmlFile.Length -eq $null ) { Write-Host "XMLファイルを指定してください" return } #存在するパスか? if ( -not $(Test-Path $XmlFile) ) { Write-Host $XmlFile + "は存在しません" return } #データセットを作成し、XMLファイルを読み込む $dtSet = New-Object System.Data.DataSet $dtSet.ReadXml($XmlFile) #===== Formの作成 ===== [reflection.assembly]::LoadWithPartialName("System.Windows.Forms") $form = New-Object System.Windows.Forms.Form $form.Text = $XmlFile $form.Width = 500 $form.Height = 400 #===== DataGridViewの作成 ===== $dgvXML = New-Object System.Windows.Forms.DataGridView $dgvXML.Dock = [System.Windows.Forms.DockStyle]::Fill $dgvXML.DataSource = $dtSet.Tables[0] $form.Controls.Add($dgvXML) #===== Panelの作成 ===== $panel1 = New-Object System.Windows.Forms.Panel $form.Controls.Add($panel1) $panel1.Dock = [System.Windows.Forms.DockStyle]::Bottom $panel1.Height = 30 #===== [閉じる]ボタンの作成 ===== $btnClose = New-Object System.Windows.Forms.Button $btnClose.Location = New-Object System.Drawing.Point(405, 4) $btnClose.Text = "閉じる" $btnClose.anchor = [System.Windows.Forms.AnchorStyles]::Top -bor [System.Windows.Forms.AnchorStyles]::Right $btnClose.Add_Click({$form.Close()}) $panel1.Controls.AddRange($btnClose) #===== Formを表示 ===== $form.ShowDialog() }
使用方法はView-Xml "XMLファイルのパス"です。
ポイントは・データセットを作成して、XMLファイルを読み込む $dtSet = New-Object System.Data.DataSet $dtSet.ReadXml($XmlFile)
・データセットをDataGridViewに連結する $dgvXML.DataSource = $dtSet.Tables[0]
・anchorプロパティ anchorプロパティは -bor 演算子を使うとうまくいきます。(-or演算子は試してみたところダメでした) -bor はビットごとのOR演算を行います。
です。
あとは、前回までのポイントを御参考下さい。
Theme design by Jelle Druyts
Pick a theme: BlogXP business calmBlue Candid Blue dasBlog dasblogger DirectionalRedux Discreet Blog Blue Elegante essence Just Html MadsSimple Mobile Mono Movable Radio Blue Movable Radio Heat nautica022 orangeCream Portal Project84 Project84Grass Slate Sound Waves Tricoleur useit.com Voidclass2 BlogXP business calmBlue Candid Blue dasBlog dasblogger DirectionalRedux Discreet Blog Blue Elegante essence Just Html MadsSimple Mobile Mono Movable Radio Blue Movable Radio Heat nautica022 orangeCream Portal Project84 Project84Grass Slate Sound Waves Tricoleur useit.com Voidclass2
Powered by: newtelligence dasBlog 2.0.7226.0
The opinions expressed herein are my own personal opinions and do not represent my employer's view in any way.
© Copyright 2009, HIRO
E-mail