Как вернуть запрос для какого приложения открывать файлы

Обновлено: 21.11.2024

fileID = fopen(filename) открывает файл filename для двоичного чтения и возвращает целочисленный идентификатор файла, равный или больший 3. MATLAB® резервирует идентификаторы файлов 0, 1 и 2 для стандартного ввода, стандартного вывода. (экран) и стандартная ошибка соответственно.

Если fopen не может открыть файл, тогда fileID равен -1 .

fileID = fopen(имя файла, разрешение) открывает файл с типом доступа, указанным в разрешении.

fileID = fopen(имя файла, разрешение, machinefmt, encodingIn) дополнительно указывает порядок чтения или записи байтов или битов в файле с использованием аргумента machinefmt. Необязательный аргумент encodingIn указывает схему кодировки символов, связанную с файлом.

[fileID,errmsg] = fopen( ___ ) дополнительно возвращает зависящее от системы сообщение об ошибке, если fopen не удается открыть файл. В противном случае errmsg является пустым вектором символов. Вы можете использовать этот синтаксис с любым из входных аргументов предыдущих синтаксисов.

fIDs = fopen('all') возвращает вектор-строку, содержащую идентификаторы всех открытых файлов. Идентификаторы, зарезервированные для стандартного ввода, вывода и ошибки, не включены. Количество элементов в векторе равно количеству открытых файлов.

filename = fopen(fileID) возвращает имя файла, которое использовалось предыдущим вызовом fopen при открытии файла, указанного в fileID. Имя выходного файла преобразуется в полный путь. Функция fopen не считывает информацию из файла для определения выходного значения.

[filename,permission,machinefmt,encodingOut] = fopen(fileID) дополнительно возвращает разрешение, машинный формат и кодировку, которые использовались предыдущим вызовом fopen при открытии указанного файла. Если файл был открыт в двоичном режиме, разрешение включает букву «b». Выход encodingOut представляет собой стандартное имя схемы кодирования. fopen не считывает информацию из файла для определения этих выходных значений. Недопустимый идентификатор файла возвращает пустые векторы символов для всех выходных аргументов.

Примеры

Открыть файл и передать идентификатор функции ввода/вывода файла

Откройте файл и передайте идентификатор файла функции fgetl для чтения данных.

Откройте файл tsunamis.txt и получите идентификатор файла.

Передайте идентификатор файла функции fgetl, чтобы прочитать одну строку из файла.

Запрос имени файла для открытия

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

Открыть файл для записи и указать тип доступа, порядок записи, кодировку символов

Открыть файл для записи в файл с использованием кодировки символов Shift-JIS.

Ввод 'w' указывает доступ для записи, ввод 'n' указывает собственный порядок байтов, а 'Shift_JIS' указывает схему кодирования символов.

Получить информацию об открытых файлах

Предположим, вы ранее открыли файл с помощью fopen .

Получить идентификаторы всех открытых файлов.

Получить имя файла и кодировку символов для открытого файла. Используйте ~ вместо выходных аргументов, которые вы хотите опустить.

Выходные данные, показанные здесь, являются репрезентативными. Ваши результаты могут отличаться.

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

filename — Имя файла, чтобы открыть
вектор символов или строковый скаляр

Имя файла, чтобы открыться в виде вектора символов или строкового скаляра, который включает расширение файла.

В системах UNIX®, если имя файла начинается с '~/' или '~ username /' , функция fopen расширяет путь к домашнему каталогу текущего или указанного пользователя соответственно.

В зависимости от расположения файла имя файла может принимать одну из следующих форм.

Укажите имя файла в имени файла .

Если вы открываете файл с доступом для чтения, а файл находится не в текущей папке, то fopen выполняет поиск по пути поиска MATLAB.

Если вы открываете файл с доступом для записи или добавления, а файл находится не в текущей папке, то fopen создает файл в текущем каталоге.

Пример: 'sample_file.txt'

Если файл не находится в текущей папке или в папке по пути MATLAB, укажите полное или относительное имя пути в имени файла.

Пример: 'C:\myFolder\myFile.sample_file.txt'

Пример: 'myFolder\sample_file.txt'

Если файл хранится в удаленном месте, то имя файла должно содержать полный путь к файлу, указанному в виде универсального указателя ресурса (URL) в следующем формате:

имя_схемы :// путь_к_файлу / мой_файл.ext

В зависимости от вашего удаленного местоположения имя_схемы может быть одним из значений в этой таблице.

Удаленное расположение имя_схемы
Amazon S3™ s3
Хранилище больших двоичных объектов Windows Azure® wasb , wasbs
HDFS™ hdfs

Если вы используете облачную файловую систему, установите переменные среды для связи с удаленной файловой системой. Дополнительные сведения см. в разделе Работа с удаленными данными.

Файлы в томе распределенной файловой системы Hadoop (HDFS) нельзя открыть в режиме чтения-записи.

Пример: 's3://bucketname/path_to_file/sample_file.txt'

Пример: 'myFile.txt'

Типы данных: char | строка

permission — Тип доступа к файлу
'r' (по умолчанию) | 'ш' | а | 'г+' | 'ш+' | 'а+' | «А» | 'В' | .

Тип доступа к файлу в виде вектора символов или строкового скаляра. Вы можете открыть файл в двоичном режиме или в текстовом режиме. В системах UNIX оба режима перевода имеют одинаковый эффект. Чтобы открыть файл в двоичном режиме, укажите один из следующих параметров.

Открыть файл для чтения.

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

Откройте или создайте новый файл для записи. Добавить данные в конец файла.

Открыть файл для чтения и записи.

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

Откройте или создайте новый файл для чтения и записи. Добавить данные в конец файла.

Открыть файл для добавления без автоматической очистки текущего выходного буфера.

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

Чтобы открывать файлы в текстовом режиме, добавьте букву "t" к аргументу разрешения, например "rt" или "wt+".

В системах Windows® в текстовом режиме:

Операции чтения, которые сталкиваются с возвратом каретки, за которым следует символ новой строки ( '\r\n' ), удаляют возврат каретки из ввода.

Операции записи вставляют возврат каретки перед любым символом новой строки в выводе.

Откройте или создайте новый файл в текстовом режиме, если вы хотите записать в него запись в MATLAB, а затем откройте его в Microsoft® Notepad или в любом текстовом редакторе, который не распознает '\n' как последовательность новой строки. При записи в файл заканчивайте каждую строку символом '\r\n' . Например, см. fprintf. В противном случае открывайте файлы в двоичном режиме для повышения производительности.

Чтобы читать и писать в один и тот же файл:

Откройте файл со значением разрешения, которое включает знак "плюс", "+".

Вызывайте fseek или frewind между операциями чтения и записи. Например, не вызывайте fread, за которым следует fwrite, или fwrite, за которым следует fread, если между ними не вызывается fseek или frewind.

Вы открываете файлы каждый раз, когда работаете на своем Mac, чаще всего, вероятно, двойным щелчком по ним. Но знаете ли вы, что существует множество различных способов открытия файлов? Вы можете использовать мышь, трекпад или даже клавиатуру. Вы можете открывать файлы в окнах, из меню и из диалоговых окон. Вот дюжина способов открывать файлы на Mac.

1. Дважды щелкните, чтобы открыть файлы

Основной способ открыть файл на Mac, а также в Windows — это дважды щелкнуть файл. По умолчанию он открывается с приложением, назначенным для работы с файлом этого типа; поэтому, если у вас есть Microsoft Office на вашем Mac, файл .doc открывается в Word, а файл .xls открывается в Excel. Только одно приложение может открыть каждый тип файла при двойном щелчке по нему, но, как вы увидите ниже, вы можете открывать файлы с помощью других приложений, а также можете изменить приложение по умолчанию, открывающее данный тип файла.

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

2. Перетащите, чтобы открыть файлы

Вы можете открыть файл, перетащив его на значок приложения либо в окне Finder, либо в Dock. Если это приложение может открыть файл, значок будет выделен, и когда вы перетащите файл, приложение запустится (если оно еще не запущено) и отобразит файл.

3. Открывать файлы с клавиатуры

Вы также можете открыть файл с клавиатуры. Выберите файл в окне Finder или на рабочем столе и нажмите Command-стрелка вниз. Как и при двойном щелчке, файл открывается в приложении, с которым связан его тип файла.

Вы также можете нажать Command-O, чтобы открыть выбранный файл.

4. Откройте любой файл из диалогового окна открытия

Как обсуждалось в недавней статье в блоге Mac Security Blog об использовании диалоговых окон «Открыть» и «Сохранить», вы можете открыть любой файл из диалогового окна «Открыть» приложения (если это приложение поддерживает этот тип файла). Просто нажмите Command-O в своем приложении, перейдите к файлу, выберите его и нажмите «Открыть» или нажмите «Return».

Если вы хотите просмотреть файл, когда вы находитесь в диалоговом окне "Открыть", вы можете выбрать и нажать клавишу пробела, чтобы просмотреть его в режиме быстрого просмотра.

5. Повторно открыть файл из меню «Открыть недавние»

Если вы работали с файлом в определенном приложении, вы можете повторно открыть его из меню "Открыть последние" этого приложения. Выберите «Файл» > «Открыть последние», затем выберите файл. Обратите внимание, что в этом меню хранится только ограниченное количество файлов.Вы можете настроить это число в разделе «Системные настройки» > «Общие», выбрав меню «Последние элементы» в нижней части панели и выбрав число от нуля до 50.

6. Открытие файлов с помощью значка Dock

Если вы нажмете и удержите значок приложения в Dock вашего Mac, вы увидите меню, показывающее последние элементы, если приложение может открывать файлы. Выберите файл, чтобы открыть его с помощью этого приложения. Как и выше, это меню содержит только ограниченное количество файлов.

7. Открыть файлы из меню последних элементов

Если вы выберете меню Apple, а затем «Последние элементы», вы увидите список последних приложений, документов и серверов. Выберите файл в разделе «Документы», и он откроется в назначенном ему приложении. Как и выше, вы можете контролировать количество элементов, отображаемых в этом меню, в общих настройках. Разница между этим меню и меню «Открыть недавние» в приложениях заключается в том, что в этом меню отображаются недавно открытые файлы из всех приложений, тогда как каждое приложение также имеет собственное меню «Открыть недавние», в котором отображаются только его собственные файлы.

8. Используйте Spotlight для открытия файлов

Вы можете использовать Spotlight для поиска файлов — по их имени или даже по ключевым словам в их содержании — и открывать их из результатов. Просто используйте клавиши со стрелками, чтобы выбрать файл, и нажмите клавишу «Ввод» или дважды щелкните его.

Если вы хотите отобразить файл, который вы нашли в Spotlight, нажмите Command-Return, и откроется новое окно Finder с выделенным файлом.

9. Открыть файлы из Dock

Если вы добавили файлы в правую часть панели Dock (или в нижнюю часть, если расположите панель Dock по обеим сторонам экрана), один щелчок откроет этот файл.

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

10. Используйте быстрый просмотр для открытия файлов

Если вы выберете файл в Finder, а затем нажмете клавишу пробела, вы увидите предварительный просмотр файла. Если вы хотите открыть файл, вы можете нажать кнопку «Открыть с помощью…» в верхней части окна предварительного просмотра. Это покажет имя приложения, которое назначено для открытия этого типа файла, и будет сказано, например, Открыть с предварительным просмотром.

11. Щелкните правой кнопкой мыши, чтобы открыть файлы

Если щелкнуть правой кнопкой мыши файл в Finder, вы увидите два пункта меню: «Открыть» и «Открыть с помощью». Первый позволяет открыть файл с помощью приложения, связанного с его типом файла, а второй отображает подменю, содержащее все приложения, которые могут открыть этот файл. Это лучший способ открыть файл в приложении, отличном от того, которое по умолчанию открывает файл такого типа.

Вы также можете выбрать файл и выбрать «Файл» > «Открыть с помощью», чтобы получить доступ к тому же подменю.

12. Из командной строки вы можете открывать файлы

Если вы используете командную строку, вы, вероятно, уже знаете, что файлы можно открывать в приложении "Терминал". Просто введите команду открытия, затем пробел, затем полный путь к файлу и нажмите клавишу «Ввод». Ваша команда должна выглядеть так:

Есть более быстрый способ сделать это, если вы видите файл в Finder. Введите open, затем пробел, затем перетащите файл в окно терминала. Это копирует его путь к файлу. Нажмите клавишу «Ввод», чтобы открыть файл со связанным с ним приложением.

Дополнительный совет: как связать тип файла с приложением

Выше я упоминал, что типы файлов связаны с приложениями. Для каждого типа файлов — например, .doc, .xls, .txt — на вашем Mac есть одно и только одно приложение, которое автоматически открывает файлы, например, когда вы дважды щелкаете файлы. Но вы можете это изменить.

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

Выберите любой файл .txt в Finder, затем нажмите Command-I. В разделе «Открыть с помощью» вы увидите меню, показывающее, что TextEdit является приложением по умолчанию. Щелкните меню и выберите предпочтительный текстовый редактор, затем нажмите «Изменить все». Mac не забудет открыть все файлы .txt в выбранном вами приложении.

Обратите внимание, что вы по-прежнему сможете открывать эти файлы в других приложениях, перетаскивая их на значки приложений, из контекстного меню "Открыть с помощью" и т. д. Воспользуйтесь этими советами, и вскоре вы обнаружите, как они повысят вашу продуктивность!

Как я могу узнать больше?

Каждую неделю в подкасте Intego Mac эксперты Intego по безопасности для Mac обсуждают последние новости Apple, рассказы о безопасности и конфиденциальности, а также дают практические советы по максимально эффективному использованию устройств Apple. Обязательно следите за подкастом, чтобы не пропустить ни одного выпуска.

Вы также можете подписаться на нашу рассылку по электронной почте и следить за последними новостями безопасности и конфиденциальности Apple в блоге Mac Security Blog. И не забудьте подписаться на Intego в своих любимых социальных сетях: Facebook, Instagram, Twitter и YouTube.

Поделиться:

О Кирке МакЭлхерне

Кирк Макэлхерн пишет о продуктах Apple и многом другом в своем блоге Kirkville. Он является соведущим Intego Mac Podcast, а также нескольких других подкастов, а также регулярно пишет статьи в The Mac Security Blog, TidBITS и нескольких других веб-сайтах и ​​публикациях. Кирк написал более двух десятков книг, в том числе книги Take Control о мультимедийных приложениях Apple, Scrivener и LaunchBar. Следуйте за ним в Твиттере на @mcelhearn. Просмотреть все сообщения Кирка МакЭлхерна → Эта запись была опубликована в разделе Как сделать и помечена как Командная строка, док-станция, Finder, сочетания клавиш, Mac, Открыть диалоговое окно, Открыть файлы, Быстрый просмотр, Последние элементы, Недавнее меню, Прожектор, Терминал. Добавьте постоянную ссылку в закладки.

file = uigetfile открывает модальное диалоговое окно со списком файлов в текущей папке. Это позволяет пользователю выбрать или ввести имя файла. Если файл существует и действителен, uigetfile возвращает имя файла, когда пользователь нажимает кнопку «Открыть». Если пользователь нажимает кнопку «Отмена» или кнопку закрытия окна (X), uigetfile возвращает 0 .

[file, path] = uigetfile возвращает имя файла и путь к файлу, когда пользователь нажимает кнопку «Открыть». Если пользователь нажимает кнопку «Отмена» или кнопку закрытия окна (X), то uigetfile возвращает 0 для обоих выходных аргументов.

[ file , path , indx ] = uigetfile возвращает индекс фильтра, выбранного в диалоговом окне, когда пользователь нажимает кнопку «Открыть».

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

Обычно отображаются только файлы с соответствующим расширением. На некоторых платформах uigetfile отображает файлы, не соответствующие фильтру, но затемняет имена этих файлов. Если фильтр отсутствует или пуст, uigetfile использует список типов файлов по умолчанию (например, все файлы MATLAB®).

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

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

___ = uigetfile( ___ ,'MultiSelect', mode ) указывает, может ли пользователь выбирать несколько файлов. Установите режим на «включено», чтобы включить выбор нескольких файлов. По умолчанию он отключен.

Библиотеки Windows ® могут располагаться в нескольких папках.

Примечание

Визуальные характеристики диалогового окна зависят от операционной системы, в которой выполняется ваш код. Например, некоторые операционные системы не отображают заголовки диалоговых окон. Если вы передаете заголовок диалогового окна функции uigetfile, эти операционные системы не отображают заголовок.

Примеры

Показать полную спецификацию файла

Показать полную спецификацию файла, выбранного в диалоговом окне. Используйте функции disp и fullfile для добавления пояснительного текста и объединения выходных значений пути и файла.

Выбранный пользователем H:\Documents\MyCode\surf.m

Отображение выбора индекса фильтра

Отображение выбора индекса фильтра с пояснительным текстом в командном окне. Используйте функцию num2str, чтобы преобразовать числовое значение индекса фильтра ( indx ) в массив символов. Это делает значение действительным входом в функцию disp.

Пользователь выбрал H:\Documents\MyCode\peaks.fig и индекс фильтра: 3

Фильтровать файлы по расширению

Отображать в диалоговом окне только файлы с расширением .m, указав '*. m' в качестве входного аргумента фильтра.

Укажите список фильтров и заголовок диалогового окна

Создайте список расширений файлов в раскрывающемся списке фильтра файлов. Передайте входной параметр фильтра как массив ячеек из символьных векторов и разделите расширения файлов точкой с запятой.

Укажите фильтры и описания фильтров

Создайте список расширений файлов и дайте им описания, передав входной аргумент фильтра как массив ячеек из символьных векторов. Первый столбец массива ячеек содержит расширения файлов, а второй содержит пользовательские описания типов файлов. Этот пример также связывает несколько типов файлов с описаниями «Файлы MATLAB» и «Модели».

Укажите имя файла по умолчанию

Чтобы отобразить имя файла по умолчанию в поле Имя файла при открытии диалогового окна, передайте имя файла в качестве входного аргумента defname

Укажите путь и файл по умолчанию

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

Укажите фильтры и папку по умолчанию

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

Включить выбор нескольких файлов

Включите выбор нескольких файлов, установив для параметра «Множественный выбор» значение «включено» . Пользователи могут выбрать несколько файлов, удерживая нажатой клавишу Shift или Ctrl и щелкая имена файлов.

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

filter — Файловый фильтр
вектор символов (по умолчанию) | массив ячеек из символьных векторов | массив строк

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

Имя файла отображается в поле Имя файла диалогового окна. Расширение файла является значением фильтра по умолчанию.

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

В диалоговом окне отображается содержимое папки. Поле Имя файла пусто, фильтр не применяется. Чтобы указать имя папки, последний символ фильтра должен быть либо обратной косой чертой ( \ ), либо косой чертой ( / ).

Если указанная папка не существует, uigetfile открывает диалоговое окно для текущей папки.

В диалоговом окне отображаются только файлы с соответствующим расширением.

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

Чтобы создать фильтр с более чем одним расширением файла, задайте расширения в пределах одного вектора символов или строки, разделенных точкой с запятой ( ; ).

В диалоговом окне отображаются расширения с их описаниями в поле фильтра.Пользователи могут выбирать между фильтрами.

Чтобы отобразить описания фильтров, укажите два столбца в массиве ячеек или массиве строк. Первый столбец содержит список расширений файлов. Второй столбец содержит соответствующий список описаний. Эти описания заменяют стандартные описания в поле фильтра. Описание не может быть пустым.

Если фильтр файлов содержит путь, этот путь может содержать следующие символы:

Например, '../*.m' перечисляет все файлы кода с расширением .m в папке над текущей папкой.

Примечание

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

title — заголовок диалогового окна
'Выбрать файл для открытия' (по умолчанию) | вектор символов

Заголовок диалогового окна в виде вектора символов.

Пример: "Выберите файл"

defname — Значение поля имени файла по умолчанию
'' (по умолчанию) | вектор символов | строковый скаляр

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

Если вы укажете путь, он может содержать следующие символы:

Чтобы указать только имя папки, сделайте последний символ значения defname либо обратной косой чертой ( \ ), либо косой чертой ( / ).

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

Пример: 'C:\Documents\my_MATLAB_files'

Пример: '..\myfile.mat'

Пример: '..\Документы\'

mode — режим множественного выбора
'off' (по умолчанию) | 'включено'

Режим множественного выбора, указанный как 'вкл.' или 'откл.' . Если режим множественного выбора выключен, пользователь может выбрать только один файл. Если включен режим множественного выбора, пользователь может выбрать несколько файлов. Если пользователь выбирает несколько файлов, они должны находиться в одной папке; в противном случае MATLAB отображает диалоговое окно с предупреждением. Библиотеки Microsoft® Windows могут располагаться в нескольких папках.

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

file — имя файла
вектор символов | массив ячеек из символьных векторов

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

Массив ячеек из символьных векторов возвращается, когда для параметра «MultiSelect» установлено значение «вкл.», а пользователь выбирает несколько файлов. Каждый элемент массива содержит имя выбранного файла. Имена файлов в массиве ячеек сортируются в порядке, используемом платформой пользователя. Если пользователь выбирает несколько файлов, они должны находиться в одной папке, иначе MATLAB отображает диалоговое окно с предупреждением.

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

path — Путь к указанному файлу
вектор символов

Путь к указанному файлу или файлам, возвращенным как вектор символов.

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

indx — выбранный индекс фильтра
целое число

Выбранный индекс фильтра, возвращаемый как целое число.

Фильтр — это немаркированный элемент управления диалогового окна справа от поля Имя файла в диалоговом окне. Значение индекса фильтра соответствует элементу, выбранному в раскрывающемся списке фильтра. Индекс первой строки равен 1.

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

Подробнее

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

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

Используйте путь и имя файла, которые возвращает uigetfile, чтобы открыть, прочитать или проанализировать файл, используя различные функции ввода и вывода в наборах инструментов MATLAB и MATLAB. Например: перечислено здесь.

imread для чтения изображений.

xlsread для чтения файлов Microsoft Excel.

открывать, редактировать или запускать файлы кода MATLAB. Например, этот код создает диалоговое окно для получения имени файла кода MATLAB от пользователя, строит полное имя файла из возвращенных значений, а затем запускает указанный пользователем файл кода.

Альтернативный функционал

Используйте функцию dir, чтобы получить отфильтрованный или неотфильтрованный список файлов в вашей текущей папке или в указанной вами папке. Функция dir также может возвращать атрибуты файла.

Вывод: в этом руководстве вы узнаете, как отобразить диалоговое окно открытия файла в приложениях Tkinter.

Введение в функции диалогового окна открытия файла Tkinter

При разработке приложения Tkinter, работающего с файловой системой, необходимо предоставить диалоговое окно, позволяющее выбирать файлы.

Для этого вы можете использовать модуль tkinter.filedialog.Следующие шаги показывают, как отобразить диалоговое окно открытия файла:

Сначала импортируйте модуль tkinter.filedialog:

Во-вторых, вызовите функцию fd.askopenfilename(), чтобы отобразить диалоговое окно, позволяющее выбрать один файл:

Функция askopenfilename() возвращает выбранное вами имя файла.

Askopenfilename() также поддерживает другие полезные параметры, включая начальный каталог, отображаемый в диалоговом окне, или фильтрацию файлов по их расширениям.

Следующая программа отображает кнопку:

Если вы нажмете кнопку, откроется диалоговое окно с файлом:

После выбора файла программа покажет полный путь к выбранному файлу:

Выбор нескольких файлов

Функция askopenfilenames() отображает диалоговое окно для выбора нескольких файлов. Он возвращает выбранные имена файлов в виде кортежа. Например:

Открытие файлов напрямую

После получения выбранных имен файлов их можно открыть с помощью метода open().

Чтобы сделать его более удобным, модуль tkinter.filedialog также предоставляет некоторые функции, которые позволяют вам выбирать один или несколько файлов и напрямую возвращать файловые объекты.

Функция askopenfile() отображает диалоговое окно файла и возвращает файловый объект выбранного файла:

А функция askopenfiles() показывает диалоговое окно файла и возвращает файловые объекты выбранных файлов:

Следующая программа иллюстрирует использование функции askopenfile():

Это позволит вам открыть текстовый файл и отобразить содержимое файла в текстовом виджете:

Читайте также: