I'm trying to read in an excel spreadsheet and I can't get it to do it.
I put the spreadsheet in the MATLAB home directory, then I put this: -
M = xlsread('Psych_anon_mine.xlsx');
And I get the error message: -
??? Error using ==> xlsread at 214 XLSREAD unable to open file Psych_anon_mine.xlsx. File /Users/Tom**********/Documents/MATLAB/Psych_anon_mine.xlsx not found.
(The stars are just my last name)
Error in ==> Ass_2_data_A at 3 M = xlsread('Psych_anon_mine.xlsx');
Any help would be greatly appreciated

 채택된 답변

Walter Roberson
Walter Roberson 2012년 12월 12일

0 개 추천

(Looks like you are using OS-X)
At the MATLAB command prompt, try
!ls ~/Documents/MATLAB/Psych_anon*
and see if it finds the file. Perhaps there is a hidden extension.

댓글 수: 14

Tom
Tom 2012년 12월 12일
이동: Voss 2022년 11월 9일
Yes thanks that worked. I just copied and pasted the address from that and it's working now. Many thanks.
Walter Roberson
Walter Roberson 2012년 12월 12일
이동: Voss 2022년 11월 9일
Was there a hidden extension? Or was there a typo in the file name?
Alireza Kharazmi
Alireza Kharazmi 2016년 7월 28일
Hi, I am also using OS and I have similar problem with Matlab. I have tried it but it gives me this error "No such file or directory". I would be grateful if you could help me.
Walter Roberson
Walter Roberson 2016년 7월 28일
Which directory is your spreadsheet in? What is your current directory at the time you give the xlsread() command? Please show the commands that you use to construct the file name, and your xlsread command.
Alireza Kharazmi
Alireza Kharazmi 2016년 7월 28일
I am using importdata command for a txt file. In fact, when I use uigetfile it does not import the data but if I use importdata('filename') it works.
Stephen23
Stephen23 2016년 7월 28일
@Alireza Kharazmi: uigetfile does not import data, it returns the selected file name. This is clearly explained in the documentation.
Alireza Kharazmi
Alireza Kharazmi 2016년 7월 28일
Sorry, I am not sure if I answered your question properly. I am confused now. I am using three open file with three different push buttons. I am starting from the same directory where .m file is placed. The first push button is uigetfile and then cd command to get into the directory of interest and then importdata some data. Second push buttons is another uigetfile and then importdata some other files. These two steps are okay. The third push button is a uigetfile but the file of interest is inside another folder in the current directory. At this point I get this error "Unable to open file.".
Walter Roberson
Walter Roberson 2016년 7월 28일
Instead of cd'ing around, you should use fullfile() to construct complete file names.
Alireza Kharazmi
Alireza Kharazmi 2016년 8월 8일
My apologies for late response, thank you very much for your help Walter. My problem is fixed now.
Armando Torres
Armando Torres 2022년 11월 9일
Hi Walter,
I am having a similar problem with mzxmlread. I am using OS-X and the 2022 version of Matlab. I am following the same syntax as online and I tried using your command code and it still told me that it couldn't find the file. I don't know what to do. Will you please help me out?
Best,
Armando
With the information you have given us, we cannot be sure that the file is intended to be in the current directory, or if it is intended to be in a different folder. If it is possibly in another folder you need to specify the path to the file, possibly using fullfile() to construct the path that is to be passed in.
[filename, filepath] = uigetfile('*.mzXML');
if isnumeric(filename); return; end %user cancel
fullname = fullfile(filepath, filename);
out = mzxmlred(fullname);
If the file intended to be in your current directory then you should verify that the file exists with that exact name, such as using
ls trial*
@Armando Torres try it this way
fullFileName = fullfile(pwd, 'trial1.mzxml');
if ~isfile(fullFileName)
warningMessage = sprintf('Error:\n"%s"\nwas not found. Please locate it.', fullFileName)
uiwait(warndlg(warningMessage));
% Have user browse for a file, from a specified "starting folder."
% For convenience in browsing, set a starting folder from which to browse.
startingFolder = pwd; % or 'C:\wherever';
if ~isfolder(startingFolder)
% If that folder doesn't exist, just start in the current folder.
startingFolder = pwd;
end
% Get the name of the file that the user wants to use.
defaultFileName = fullfile(startingFolder, '*.mz*');
[baseFileName, folder] = uigetfile(defaultFileName, 'Select a file');
if baseFileName == 0
% User clicked the Cancel button.
return;
end
fullFileName = fullfile(folder, baseFileName)
end
out = mzxlmread(fullFileName)
Armando Torres
Armando Torres 2022년 11월 10일
I’ll give it a try later on tonight! Thank you both so much. I will update you with what happens
Armando Torres
Armando Torres 2022년 11월 10일
It worked! Thank you both

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Startup and Shutdown에 대해 자세히 알아보기

제품

태그

질문:

Tom
2012년 12월 12일

댓글:

2022년 11월 10일

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by