File path containing %

20 views (last 30 days)
Zoltán Csáti
Zoltán Csáti on 13 Aug 2015
I would like to get the path for directories containing % (like %MATLAB_ROOT%, %APPDATA%, etc.) in Windows. However, functions like fileparts cannot interpret the percent sign. Is there a way to make this possible within MATLAB, or the only solution is to call system commands?
Thanks, Zoli

Accepted Answer

per isakson
per isakson on 13 Aug 2015
Edited: per isakson on 13 Aug 2015
Use getenv, Environment variable to get values of environment variables of the underlying operating system, e.g.
>> getenv('OS')
ans =
>> getenv('APPDATA')
ans =
%NAME% gets the value of NAME in the Command Prompt, e.g.
Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. All rights reserved.
C:\Users\poi>echo %APPDATA%
And there is the Matlab function, matlabroot
>> matlabroot
ans =
C:\Program Files\MATLAB\R2013b
Rahul Sivagaminathan
Rahul Sivagaminathan on 18 Apr 2022
I have a follow up question, the getenv('APPDATA') function works if you are writing a program in matlab desktop. I want to compile my matlab program into an exe file using matlab compiler SDK. Once compiled and if i install the program in C drive then getenv('APPDATA') takes me to C\Program Files(x86) .... path but I want to go to C:\Users\poi\AppData\Roaming ... path.
So my question is - how can i get to C\Users\Username\AppData folder if my matlab exe file (compiled using matlab compiler sdk) is installed in C program files. Please help me.

Sign in to comment.

More Answers (0)


Find more on C Shared Library Integration in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!