Matlab is in the wrong working path, how to set it?

32 views (last 30 days)
Hello,
i try to load a file, that is in the folder '/functions'
I tried to add this by addpath('\function) but this didnt work. Only addpath([pwd '/functions/']) works.
the command pwd and cs gives out the right directory but if i try to load the file it says:
Error using load
Unable to find file or directory 'C:\file.mat'.
It seems that the matlab is working in an other directory. I dont know how to change it.
I reinstalled matlab allready, but the prefferences are saved somewhere.
I also tried to set the paths(home/set paht) to default, didnt work
Can I set whole matlab to default?
Thanks for your help
  5 Comments
Florian Scheible
Florian Scheible on 5 Oct 2022
pwd gives out the directory the script is in.
This folder includes the subfolder /function but it is not possible to include this one by a relative path
>> pwd
ans =
'C:\Users\20220031\Downloads\OCT_Reconstruction_and_Spectral_Analysis-master'
>> ls
. ROI_analysis runSpectralV3.m
.. display_functions spectralParamsV3_2D.m
Contast enhanced OCT.pdf functions spectralParamsV3_3D.m
Contrast enhanced OCT supplementary.pdf lymph_functions xml_io_tools
LICENSE reconstructParams.m
README.md runReconstruct.m
>> addpath('\xml_io_tools\');
Warning: Name is nonexistent or not a directory: C:\xml_io_tools
> In path (line 109)
In addpath (line 86)
Stephen23
Stephen23 on 5 Oct 2022
Edited: Stephen23 on 5 Oct 2022
"pwd gives out the directory the script is in. "
No, PWD gives the current directory. Whether the script is in the current directory or not is irrelevant to PWD.
"This folder includes the subfolder /function.."
There is no directory named FUNCTION in the LS output you show. But there is one named FUNCTIONS.
"but it is not possible to include this one by a relative path"
Why are you still attempting to use relative paths with ADDPATH?:
addpath('\xml_io_tools\');
As I already explained here, ADDPATH accepts only absolute filenames.

Sign in to comment.

Answers (1)

Bjorn Gustavsson
Bjorn Gustavsson on 5 Oct 2022
Generate full (or relative) path to the file you want to load:
data_dir = '/home/me/data';
data_file = 'mydata.mat';
file2load = fullfile(data_dir,data_file);
Load said file:
load(file2load)
Use the matlab-path for its intended purpose: expand the search-tree of toolboxes with matlab-functions.
HTH

Categories

Find more on Search Path in Help Center and File Exchange

Products


Release

R2022b

Community Treasure Hunt

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

Start Hunting!