ファイルダイアローグ-ファイルのパスを取得する-
2014年1月14日:OS X
ファイルを開いたり、保存したりするときファイルのパスを取得する必要があります。ファイルパスの取得にはOSのAPIを使用します。ここでは、Cocoa API(MacのAPI)を利用して、ファイルダイアローグからパスを取得する方法を紹介します。
ファイルを開く-オープンダイアローグ-
ファイルを開く際にはNSOpenPanelクラスを利用します。具体的には以下のようにします。
let dlg=NSOpenPanel() dlg.allowedFileTypes=["jpg","jpeg","png"] if dlg.runModal() != 1 {return}
FileTypeに開くファイルの情報を設定します。ここではjpg,jpeg,pngファイルを開くように設定しています。そして、「runModal」でダイアローグを実行しています。戻り値は
- ファイルが選択された:1
- キャンセルが選択された:0
となります。選択されたファイルのURLは
dlg.url
で取得可能です。
ファイルを保存する-セーブダイアローグ-
ファイルを保存するにはNSSavePanelクラスを使用します。
let dlg=NSSavePanel() dlg.allowedFileTypes=["jpg","jpeg","png"] if dlg.runModal() != 1 {return}
NSOpenPannelがNSSavePanelになっただけです。基本的にNSOpenPanelと同じです。
著者:安井 真人(やすい まさと)
@yasui_masatoさんをフォロー