打开用于保存文件的对话框
___
= uiputfile(
仅显示扩展名与
filter
)
filter
匹配的文件。在某些平台上,
uiputfile
也会显示任何与
filter
不匹配的文件,但它们会灰显。
uiputfile
函数将
All Files
追加到文件类型列表中。
如果
filter
是文件名,则
uiputfile
会在
文件名
字段中显示该文件名,并使用它的文件扩展名作为默认过滤器。
可以将此语法与上述语法中的任何输出参数结合使用。
创建一个对话框并将
filter
指定为
animinit.m
。代码运行时,
文件名
字段包含指定的文件名,
保存类型
字段设置为
*.m
。
[file,path,indx] = uiputfile('animinit.m');
通过用分号分隔
filter
输入参数中的每个文件扩展名,在
保存类型
列表框中显示多个文件类型。
filter = {'*.m';'*.slx';'*.mat';'*.*'};
[file, path] = uiputfile(filter);
通过使用元胞数组提供
filter
输入值,创建一个文件类型列表并为其中的文件类型指定不同于默认设置的描述。为
'MATLAB Files'
和
'Models'
这两种描述关联多个文件类型。
输入
filter
元胞数组的第一列包含文件扩展名,第二列包含文件类型的描述。例如,第一列的第一个条目包含用分号分隔的多个扩展名。这些文件类型均与
'MATLAB Files (*.m,*.mlx,*.fig,*.mat,*.slx,*.mdl)'
描述关联。
[filename, pathname, filterindex] = uiputfile( ... {'*.m;*.fig;*.mat;*.slx;*.mdl',... 'MATLAB Files (*.m,*.mlx,*.fig,*.mat,*.slx,*.mdl)'; '*.m;*.mlx', 'program files (*.m,*.mlx)';... '*.fig','Figures (*.fig)';... '*.mat','MAT-files (*.mat)';... '*.slx;*.mdl','Models (*.slx,*.mdl)';... '*.*', 'All Files (*.*)'});
创建一个标题为
'Workspace File'
的对话框,并将
保存类型
字段设置为 MAT 文件。
[file,path] = uiputfile('*.mat','Workspace File');
使用通配符作为过滤器并指定默认文件名将在 文件名 字段中显示默认文件,但用户可在对话框中查看所有类型的文件。
[file,path,indx] = uiputfile('*.*','File Selection','test.m');
打开“选择要写入的文件”对话框,然后选择一个文件。MATLAB 会自动打开“确认另存为”对话框。
如果您在确认对话框中点击 确定 ,则 MATLAB 将关闭这两个对话框,并在命令行窗口显示您的选择。
如果您在确认对话框中点击
否
,然后在“选择要写入的文件”对话框中点击
取消
,则命令行窗口将显示
User clicked Cancel.
[file,path] = uiputfile('*.m'); if isequal(file,0) || isequal(path,0) disp('User clicked Cancel.') disp(['User selected ',fullfile(path,file),... ' and then clicked Save.'])
filter
—
文件过滤器
所有 MATLAB 文件
(默认) |
字符向量
|
字符向量元胞数组
|
字符串数组
文件过滤器,指定为字符向量、字符向量元胞数组或字符串数组。下表列出了可以传递给
filter
参数的输入的类型以及对话框的对应行为。
| 输入 | 行为 | 示例 |
|---|---|---|
| 文件名 |
该文件名出现在对话框的 文件名 字段中。该文件的扩展名即为默认过滤器值。
如果文件名包含路径,对话框将打开到指定的文件夹。否则,它会打开到当前文件夹。如果指定的文件夹不存在,则
|
|
| 文件夹 |
对话框显示文件夹的内容。
文件名
字段为空,并且不应用任何过滤器。要指定文件夹名称,
如果指定的文件夹不存在,则
|
|
| 文件扩展名过滤器 |
对话框仅显示具有匹配的文件扩展名的文件。 要允许用户在多个过滤器之间进行选择,请为每个过滤器指定具有项目的元胞数组或字符串数组。过滤器出现在对话框的过滤器字段下拉菜单中。
要创建一个具有多个文件扩展名的过滤器,请在单个字符向量或字符串中指定扩展名,扩展名之间用分号 (
|
|
| 具有描述的文件扩展名过滤器 |
对话框在过滤器字段中显示扩展名及其描述。用户可以在过滤器之间进行选择。 要显示过滤器描述,请在元胞数组或字符串数组中指定两列。第一列包含文件扩展名列表。第二列包含相应的说明列表。这些说明替换过滤器字段中的标准说明。说明不能为空。 |
|
如果文件过滤器包含路径,该路径可以包含以下字符:
.
..
\
/
~
例如,
'../*.m'
列出位于当前文件夹上一级文件夹中具有
.m
扩展名的所有代码文件。
要使用默认文件过滤器,请为过滤器值指定空引号。例如,要使用默认文件过滤器并指定自定义标题,请使用以下语法:
uiputfile('','Select File')
title
—
对话框标题
选择要写入的文件
(默认) |
字符向量
|
字符串标量
对话框标题,指定为字符向量或字符串标量。
要使用默认对话框标题,请为标题值使用空引号。例如,要指定文件过滤器、默认标题和 文件名 字段值,请使用以下语法:
uiputfile('*.m','','myFile.m')
示例: 'File Selector'
defname
—
默认文件名
对话框打开时显示在 文件名 字段中的默认文件名,指定为字符向量或字符串标量。
defname
值可以包含路径和文件名,也可以只包含路径。您可以在
defname
参数中使用以下任何字符:
.
|
..
|
\
|
/
|
~
|
要将
defname
指定为仅包含文件夹,请将
defname
中的最后一个字符指定为反斜杠
\
或正斜杠
/
。按此操作时,MATLAB 将在路径指定的文件夹中打开对话框。如果您指定的路径不存在,MATLAB 将在当前文件夹中打开对话框。
示例:
'myfile.m'
示例:
'../myfile.m'
file
— 用户指定的文件名
用户指定的文件名,以字符向量或字符串标量形式返回。用户可以通过以下方式指定文件名:在对话框中选择文件名、在
文件名
字段中键入文件名或者接受默认文件名(如果您指定了默认文件名)。如果用户取消该对话框,MATLAB 会将
0
返回给
file
。
path
— 用户指定的文件名的路径
用户指定的文件名的路径,以字符向量形式返回,或者返回
0
。如果用户取消该对话框,MATLAB 会将
0
返回给
path
。
indx
— 保存类型的索引
保存类型 的索引,以整数形式返回。如下图所示,索引对应于各个 保存类型 选项。索引从 1 开始。
如果用户点击
取消
按钮或对话框关闭按钮 (X),或者文件不存在,则 MATLAB 将为
indx
返回
0
。
模态对话框阻止用户在响应该对话框之前与其他 MATLAB 窗口进行交互。
要使用 MATLAB 和 MATLAB 工具箱函数将数据写入用户指定的文件和位置,可使用
uiputfile
返回的路径和文件名。例如:
在 R2006a 之前推出
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.