exponenta event banner

uiputfile

Открыть диалоговое окно для сохранения файлов

Описание

file = uiputfile открывает модальное диалоговое окно для выбора или задания файла. В диалоговом окне перечислены файлы и папки в текущей папке.

  • Если пользователь указывает допустимое имя файла и нажимает кнопку Сохранить, MATLAB ® возвращает это имя файла вfile.

  • Если пользователь отменяет диалоговое окно, то MATLAB возвращает значение 0 кому file.

Примечание

  • Успешное выполнение uiputfile возвращает имя нового или существующего файла, указанного пользователем. Файл не создается.

  • Визуальные характеристики диалогового окна зависят от операционной системы, выполняющей код. Например, некоторые операционные системы не отображают строки заголовка в диалоговых окнах. При передаче заголовка диалогового окна uiputfile , эти операционные системы не отображают заголовок.

[file,path] = uiputfile возвращает выбранный или указанный путь к файлу path. Если пользователь отменяет диалоговое окно, то MATLAB возвращает значение 0 на оба выходных аргумента.

[file,path,indx] = uiputfile возвращает индекс значения типа «Сохранить как», выбранного в диалоговом окне. Индексирование начинается с 1. Если пользователь нажимает кнопку Cancel или кнопку закрытия окна (X), то MATLAB возвращается 0 ко всем выводимым аргументам.

пример

___ = uiputfile(filter) отображает только те файлы с соответствующими расширениями filter. На некоторых платформах uiputfile также отображает любые файлы, которые не совпадают filter, но они затемнены. uiputfile добавляет Все файлы в список типов файлов.

Если filter является именем файла, то uiputfile отображает имя файла в поле Имя файла и использует расширение файла в качестве фильтра по умолчанию.

Этот синтаксис используется с любой комбинацией выходных аргументов в предыдущих синтаксисах.

пример

___ = uiputfile(filter,title) открывает диалоговое окно с указанным заголовком. Чтобы фильтровать с помощью фильтра файлов по умолчанию, но указать пользовательский заголовок, используйте пустые кавычки для значения фильтра.

file = uiputfile('','Select a File')

пример

___ = uiputfile(filter,title,defname) открывает диалоговое окно, в котором имя файла указано defname появляется в поле Имя файла.

Примеры

свернуть все

Создайте диалоговое окно и укажите filter как animinit.m. При запуске кода поле Имя файла содержит указанное имя файла, а в поле Тип сохранения установлено значение *.m.

[file,path,indx] = uiputfile('animinit.m');

Отображение нескольких типов файлов в списке Сохранить как тип путем разделения каждого расширения файла в filter входной аргумент с точкой с запятой.

filter = {'*.m';'*.slx';'*.mat';'*.*'};
[file, path] = uiputfile(filter);

Создайте список типов файлов и предоставьте им описания, которые отличаются от значений по умолчанию, используя массив ячеек для filter входное значение. Связать несколько типов файлов с 'MATLAB Files' и 'Models' описания.

Первый столбец ввода filter массив ячеек содержит расширения файлов, а второй содержит описания типов файлов. Например, первая запись столбца 1 содержит несколько расширений, разделенных точкой с запятой. Все эти типы файлов связаны с описанием '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,name,path] = uiputfile('*.*','File Selection','test.m');

Откройте диалоговое окно «Выбор файла для записи» и выберите файл. MATLAB автоматически открывает диалоговое окно Подтвердить сохранение как (Confirm Save As).

  • Если нажать кнопку ОК в диалоговом окне подтверждения, MATLAB закроет оба диалогового окна и отобразит выбор в окне команд.

  • Если нажать кнопку «Нет» в диалоговом окне подтверждения и нажать кнопку «Отмена» в диалоговом окне «Выбор файла для записи», откроется окно команды. User clicked Cancel.

[file,path] = uiputfile('*.m');
if isequal(file,0) || isequal(path,0)
   disp('User clicked Cancel.')
else
   disp(['User selected ',fullfile(path,file),...
         ' and then clicked Save.'])
end

Входные аргументы

свернуть все

Имя файла по умолчанию для отображения в поле Имя файла (File name) при открытии диалогового окна, определяемого как вектор символа или скаляр строки.

Значение defname может включать в себя путь или состоять только из пути. Вы можете использовать любой из этих символов в defname аргумент:

.
..
\
/
~

Определить defname только как папка, укажите последний символ в defname как обратная косая черта \ или косая черта /. При этом MATLAB открывает диалоговое окно в папке, указанной путем. Если указан несуществующий путь, MATLAB открывает диалоговое окно в текущей папке.

Пример: 'myfile.m'

Пример: '../myfile.m'

Спецификация фильтра типа файла, заданная как символьный вектор, массив ячеек из символьных векторов или строковый массив. MATLAB добавляет Все файлы (All Files) в список типов файлов, представленных в диалоговом окне. filter значение может включать подстановочный символ (*).

Пример: *.m

Пример: 'MATLAB Files (*.m,*.mlx,*.fig,*.mat,*.slx,*.mdl)'

Заголовок диалогового окна, заданный как вектор символа или скаляр строки. Чтобы фильтровать с помощью фильтра файлов по умолчанию, но указать пользовательский заголовок, используйте пустые кавычки для значения фильтра. Например:

uiputfile(' ','Select File')

Пример: 'File Selector'

Выходные аргументы

свернуть все

Указанное пользователем имя файла, возвращаемое в виде вектора символа или скаляра строки. Пользователь может указать имя файла, выбрав его в диалоговом окне, введя имя файла в поле Имя файла или приняв имя файла по умолчанию (если оно указано). Если пользователь отменяет диалоговое окно, то MATLAB возвращает значение file как 0.

  • Если пользователь указывает допустимое имя файла и нажимает кнопку Сохранить, то MATLAB возвращает это имя файла в file.

  • Если пользователь вводит имя файла в диалоговом окне «Имя файла», содержащее символ звездочки (*или знак вопроса (?), то MATLAB не отвечает на нажатие кнопки Save. Диалоговое окно остается открытым до тех пор, пока пользователь не отменит его или не удалит подстановочные знаки или знаки вопросительного знака. Это ограничение распространяется на все платформы, даже на платформы, разрешающие использование этих символов в именах файлов.

  • Если пользователь указывает имя существующего файла, открывается диалоговое окно с предупреждением о том, что файл уже существует и предоставляет возможность заменить файл.

    • Если пользователь нажимает кнопку Да в диалоговом окне предупреждения, то MATLAB заменяет существующий файл и возвращает имя файла.

    • Если пользователь нажимает кнопку «Нет» в диалоговом окне предупреждения, элемент управления возвращается к uiputfile позволяет пользователю указать другое имя файла.

  • Если пользователь отменяет диалоговое окно, то MATLAB возвращает значение 0 кому file.

Путь к указанному пользователем имени файла, возвращенному в виде символьного вектора или 0. Если пользователь отменяет диалоговое окно, то MATLABreturns path как 0.

Сохранить как индекс типа, возвращаемый как целое число. Как показано на этом рисунке, индекс соответствует выбору строки типа «Сохранить как». Индексирование начинается с 1.

Если пользователь нажимает кнопку Отмена или кнопку закрытия диалогового окна (X), или если файл не существует, то MATLAB возвращается indx как 0.

Подробнее

свернуть все

Модальное диалоговое окно

Модальное диалоговое окно предотвращает взаимодействие пользователя с другими окнами MATLAB перед ответом на диалоговое окно.

Совет

  • Чтобы записать данные в указанный пользователем файл и расположение с помощью функций панели инструментов MATLAB и MATLAB, используйте путь и имя файла, которые uiputfile возвращает. Например:

    • fprintf для записи данных в текстовый файл.

    • imwrite для записи изображения в графический файл.

    • xlswrite для записи матрицы в электронную таблицу Microsoft ® Excel ®. Например, этот код создает матрицу,A, создает диалоговое окно для получения имени файла от пользователя, строит полное имя файла из возвращенных значений и затем записывает матрицу в указанный пользователем файл Excel.

      A = [12.7 5.02 -98 63.9 0 -.2 56];
      [file,path] = uiputfile('*.xlsx');
      filename = fullfile(path,file);
      xlswrite(filename,A);
      

См. также

| | |

Представлен до R2006a