このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。
ファイル選択ダイアログ ボックスを開く
___ = uigetfile(
は、ダイアログ ボックス内に表示されるファイルをフィルター処理するファイルの拡張子を指定します。この構文を、前述の構文の出力引数と任意に組み合わせて使用します。filter
)
通常、ファイルの拡張子が一致するファイルのみが表示されます。また一部のプラットフォームでは、uigetfile
はフィルターと一致しないファイルを表示しますが、それらのファイル名はグレー表示になります。フィルターがない場合や空の場合、uigetfile
は既定のファイル タイプの一覧 (たとえば、すべての MATLAB® ファイル) を使用します。
___ = uigetfile(___,'MultiSelect',
は、ユーザーが複数のファイルを選択できるかどうかを指定します。モードを mode
)'on'
に設定すると、マルチファイルの選択が可能になります。既定では、これは 'off'
に設定されます。
Windows® ライブラリは複数のフォルダーにまたがっている場合があります。
メモ
ダイアログ ボックスの視覚的特性は、コードを実行するオペレーティング システムに依存します。たとえば、一部のオペレーティング システムはダイアログ ボックスにタイトル バーを表示しません。ダイアログ ボックスのタイトルを関数 uigetfile に渡した場合、それらのオペレーティング システムではタイトルが表示されません。
ダイアログ ボックスで選択されたファイルの完全なファイル仕様を表示します。関数 disp
および fullfile
を使用して説明テキストを追加して、path
および file
の出力値を連結します。
[file,path] = uigetfile('*.m'); if isequal(file,0) disp('User selected Cancel'); else disp(['User selected ', fullfile(path,file)]); end
User selected H:\Documents\MyCode\surf.m
説明テキストを使用して、コマンド ウィンドウでフィルター インデックスの選択を表示します。関数 num2str
を使用して、数値フィルター インデックス値 (indx
) を文字配列に変換します。こうすると、値が関数 disp
に対して有効な入力になります。
[file,path,indx] = uigetfile; if isequal(file,0) disp('User selected Cancel') else disp(['User selected ', fullfile(path, file),... ' and filter index: ', num2str(indx)]) end
User selected H:\Documents\MyCode\peaks.fig and filter index:
3
'*. m'
を filter
入力引数として指定することで、.m
拡張子をもつファイルのみをダイアログ ボックスに表示します。
[file,path] = uigetfile('*.m');
ファイル フィルターのドロップダウン リストのファイル拡張子のリストを作成します。filter
入力引数を文字ベクトルの cell 配列として渡して、ファイル拡張子をセミコロンで区切ります。
[file,path] = uigetfile({'*.m';'*.slx';'*.mat';'*.*'},... 'File Selector');
ファイル拡張子のリストを作成し、filter
入力引数を文字ベクトルの cell 配列として渡すことで、それらに説明を加えます。cell 配列の最初の列にはファイル拡張子が含まれ、2 番目の列にはファイル タイプのカスタムの説明が含まれます。この例は、複数のファイル タイプへの 'MATLAB
Files'
と 'Models'
の説明の関連付けも行います。
[file,path,indx] = uigetfile( ... {'*.m;*.mlx;*.fig;*.mat;*.slx;*.mdl',... 'MATLAB Files (*.m,*.mlx,*.fig,*.mat,*.slx,*.mdl)'; '*.m;*.mlx','Code files (*.m,*.mlx)'; ... '*.fig','Figures (*.fig)'; ... '*.mat','MAT-files (*.mat)'; ... '*.mdl;*.slx','Models (*.slx, *.mdl)'; ... '*.*', 'All Files (*.*)'}, ... 'Select a File');
ダイアログ ボックスを開いたときに既定のファイル名を [ファイル名] フィールドに表示するには、ファイル名を defname
入力引数として渡します。
[file,path] = uigetfile('*.png',... 'Select an icon file','icon.png')
ダイアログ ボックスを開いたときに既定のパスおよびファイル名を [ファイル名] フィールドに表示するには、完全なファイル名を defname
入力引数として渡します。
[file,path] = uigetfile('C:\Documents\Work\icon.png',... 'Select an Image File')
'Multiselect'
オプションを [オン] に設定することでマルチファイルの選択を有効にします。ユーザーは、Shift キーまたは Ctrl キーを押しながらファイル名をクリックすると、複数のファイルを選択できます。
[file,path] = uigetfile('*.m',... 'Select One or More Files', ... 'MultiSelect', 'on');
MATLAB および MATLAB ツールボックスのさまざまな入力および出力関数を使用してファイルを開く、読むまたは解析するために、uigetfile
が返すパスおよびファイル名を使用します。次に例を示します。
現在のフォルダーまたは指定したフォルダー内のフィルター処理済みまたはフィルター未処理のファイル一覧を返すには、関数 dir
を使用します。dir
はファイルの属性を返すこともできます。