How can I open a file to be read, from a relative file location?

54 views (last 30 days)
The function which reads from the text file is located at:
C:\Users\x\x\x\MatlabFiles\Connor_Matlab
and it needs to open:
%C:\Users\x\x\x\OUTPUT\Square\M1CR100S4\(AllFld_SVE).OALLFLD
Right now I've tried the relative path. I cannot write it as an absolute path, as it needs to be opened on multiple different computers.
fID = fopen('..\OUTPUT\Square\M1CR100S4\(AllFld_SVE).OALLFLD','r');

Accepted Answer

Yash Trivedi
Yash Trivedi on 10 Jul 2018
Hi Connor,
According to the relative path in your fopen() call, you need to go one level higher up in the directory hierarchy.
fID = fopen('..\..\OUTPUT\Square\M1CR100S4\(AllFld_SVE).OALLFLD','r') should work.
A single .. will look for the 'OUTPUT' folder in the 'MatlabFiles' folder and not in the last 'x' folder.
  2 Comments
Connor Sherod
Connor Sherod on 10 Jul 2018
Thank you!
So if I had the file located 4 folders back would I need to repeat that 4 times and then proceed from there? Essentially the '..\' acts as taking it back a single step?
Yash Trivedi
Yash Trivedi on 10 Jul 2018
Edited: Yash Trivedi on 10 Jul 2018
Yes, that's right. The '..\' acts as taking it back a single step. You might want to read through this thread which suggests alternatives and potential pitfalls with relative paths, especially if you're going up four levels of hierarchy -

Sign in to comment.

More Answers (0)

Categories

Find more on Startup and Shutdown in Help Center and File Exchange

Products


Release

R2018a

Community Treasure Hunt

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

Start Hunting!