MATLAB can't find my file
現在この質問をフォロー中です
- フォローしているコンテンツ フィードに更新が表示されます。
- コミュニケーション基本設定に応じて電子メールを受け取ることができます。
エラーが発生しました
ページに変更が加えられたため、アクションを完了できません。ページを再度読み込み、更新された状態を確認してください。
古いコメントを表示
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
2012 年 12 月 12 日
(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 件のコメント
Yes thanks that worked. I just copied and pasted the address from that and it's working now. Many thanks.
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
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
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
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
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
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
2016 年 7 月 28 日
Instead of cd'ing around, you should use fullfile() to construct complete file names.
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
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
Walter Roberson
2022 年 11 月 9 日
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*
Image Analyst
2022 年 11 月 9 日
@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
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
2022 年 11 月 10 日
It worked! Thank you both
その他の回答 (0 件)
カテゴリ
ヘルプ センター および File Exchange で Startup and Shutdown についてさらに検索
製品
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)
