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

57 次查看(过去 30 天)
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');

采纳的回答

Yash Trivedi
Yash Trivedi 2018-7-10
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 个评论
Connor Sherod
Connor Sherod 2018-7-10
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 2018-7-10
编辑:Yash Trivedi 2018-7-10
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 -

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Startup and Shutdown 的更多信息

产品


版本

R2018a

Community Treasure Hunt

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

Start Hunting!

Translated by