Why am I unable to select a file when I use 'uigetfile' function on the newest Mac operation system 'Catalina'.
29 views (last 30 days)
Show older comments
Zong Shenyan
on 8 Oct 2019
Commented: Francesco Scattarella
on 11 Apr 2024
I used the 'uigetfile' in the following command:
[sfile,spath,indx] = uigetfile({'*.mat','MAT';'I.*','DICOM'});
For the first option 'MAT', its corresponding files are bright and selectable. However, when I choose 'DICOM' option on the Mac dialog, all files named with ‘I.*’ are still in gray, and I can't select any of them. My matlab is R2018a for mac.
Thanks.
4 Comments
Ajit Chaudhari
on 11 Jan 2024
This issue has cropped up for me now with Ventura 13.6.3 and Matlab R2022a. It worked fine on 12/20/2023 before I ran the latest incremental MacOS system update. Anyone know if upgrading Matlab to the latest version fixes it?
Francesco Scattarella
on 11 Apr 2024
I have the same issue with Sonoma 14.4.1 and my Matlab is R2023b (apple silicon).
Accepted Answer
Anders Barth
on 27 Nov 2019
Edited: Walter Roberson
on 27 Nov 2019
We are having the same issue on 2019b Update 2 and MacOS Catalina (10.15.1). There seems to be issues with the communication between Matlab and the native file chooser in Catalina.
For now, we are using a custom implementation based on this submission, which works but is missing the native integration into the file system:
0 Comments
More Answers (3)
Minoru Tsuzaki
on 23 May 2021
I have the same problem with Matlab 2021a and Mac OS 10.15.7.
I did my own workarounds based on Ike's direction. My addtion is to put a couple of lines after accepting any type of files by uigetfile.
The following lines are an example when I want to filter several type of audio files.
(The example is not kind enough to tell users what type is acceptalble. It would be better for you to revise the error message lines.)
[file,path] = uigetfile('*');
[~,~,anExt]=fileparts(file);
idx = find(strcmp(anExt,{'.wav','.aif','.m4a','.mp4'})) ;
if isempty(idx)
uiwait(msgbox('Unsupported file type.','Error','error'));
else
% processing for the proper file type.
end
0 Comments
Ike Brown
on 21 Mar 2020
Edited: Ike Brown
on 21 Mar 2020
This isn't a complete fix, but you if you know the file extension you want, you can get around this issue by specifying the file extension in uigetfile. For example, [file,path]=uigetfile will only allow you to select MatLab files. However, [file,path]=uigetfile('*.csv') will allow you to select any .csv file.
Update: [file,path]=uigetfile('*') appears to let you select any file extension
0 Comments
See Also
Categories
Find more on Environment and Settings in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!