Adding a pathdef.m file, as a string, to the current path

조회 수: 12 (최근 30일)
Charles Pace
Charles Pace 2021년 3월 5일
댓글: Rik 2021년 3월 5일
Hello,
I have saved a pathdef file ('pathdef_etc.m') which contains the paths that I need for a given project. I simply want to get the string output from this pathdef file, so that I can add it to my current path using 'addpath( path_string )'.
How can I get this pathdef file as a string?
Thank you
  댓글 수: 2
Charles Pace
Charles Pace 2021년 3월 5일
편집: Charles Pace 2021년 3월 5일
I am looking for something like...
*from the directory containing the pathdef file*
display(pathdef.m),
so that I can type addpath(ans)
Walter Roberson
Walter Roberson 2021년 3월 5일
What is the file format? Did you create it with savepath ?
Are the individual paths separated by colon or by newlines?
Is this for Windows or (not Windows) ?

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

채택된 답변

Jorg Woehl
Jorg Woehl 2021년 3월 5일
You probably want to use textscan for this:
fileID = fopen('pathdef_etc.m')
C = textscan(fileID, '%s', 'Delimiter', '\n')
fclose(fileID)
The output is a single cell containing a n-by-1 cell array of character vectors (one per line in the input file). So C{1}{1} contains the first line of your file, C{1}{2} the second, and so on. You could then set up a loop to add each line to the path:
for i=1:size(C{1},1)
addpath(C{1}{i})
end
Hope this helps!
  댓글 수: 3
Charles Pace
Charles Pace 2021년 3월 5일
I just figured it out actually. It was really simple. I just needed to find the pathdef file in the explorer, right click -> 'run',
then the path appeared in command window as one really long string.. 'ans = path1, path2, etc .... '
then just addpath(ans).
Thank you for your help though.
Rik
Rik 2021년 3월 5일
That suggests you can use this as well:
addpath(pathdef);

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

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Logical에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by