LoginSignup
0
1

More than 1 year has passed since last update.

PowerShellファイル選択ダイアログについて。

Last updated at Posted at 2022-08-18

前回PowerShellにて16進数ダンプの記事を書いたが、ファイル選択が面倒なので、ファイル選択ダイアログを表示することとした。フォルダ選択はこちら

ファイル選択ダイアログ.ps1

#C#(.NETライブラリ)の名前空間を指定してアセンブリを有効にする
#※記述しなくても動いた。
[void][Reflection.Assembly]::LoadWithPartialName("Ststem.Windows.Forms")

#ファイル選択ダイアログのインスタンス生成
$OpenFileDialog=New-Object Windows.Forms.OpenFileDialog

#タイトル、指定しない場合「開く」になる
$OpenFileDialog.Title="ファイル選択"

#拡張子、指定しない場合「空白で全てのファイル」になる
$OpenFileDialog.Filter="テキスト(*.txt)|*.txt|全てのファイル(*.*)|*.*"

#デフォルトディレクトリ、指定しない場合「このスクリプトと同じ場所」になる
$InitialDirectory="C:\Users\〇〇\Desktop"
$OpenFileDialog.InitialDirectory=$InitialDirectory

#ダイアログ表示
$Rsult=$OpenFileDialog.ShowDialog()

#ファイルを選択した場合
IF($Rsult-eq[System.Windows.Forms.DialogResult]::OK){
    #ここに選択したファイルの操作を記述

    #Invoke-Item は、実行可能ファイルを実行するなど、関連付けられているアプリケーションでファイルを開く。
    Invoke-Item $OpenFileDialog.FileName

    #コンソールにファイル名表示
    Write-Host "選択したファイルは「"($OpenFileDialog.FileName)"」です。"
    
    #コンソールに内容表示 
    Write-Host "内容は「"(Get-Content -Path $OpenFileDialog.FileName)"」です。"

}else{
    #コンソールにメッセージ表示
    Write-Host "ファイルを選択しませんでした。"
}

【参考文献】

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1