File path containing %

26 Ansichten (letzte 30 Tage)
Zoltán Csáti
Zoltán Csáti am 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

Akzeptierte Antwort

per isakson
per isakson am 13 Aug. 2015
Bearbeitet: per isakson am 13 Aug. 2015
Use getenv, Environment variable to get values of environment variables of the underlying operating system, e.g.
>> getenv('OS')
ans =
Windows_NT
>> getenv('APPDATA')
ans =
C:\Users\poi\AppData\Roaming
%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%
C:\Users\poi\AppData\Roaming
C:\Users\poi>
And there is the Matlab function, matlabroot
>> matlabroot
ans =
C:\Program Files\MATLAB\R2013b
  2 Kommentare
Zoltán Csáti
Zoltán Csáti am 14 Aug. 2015
I looked into getenv before, but somehow I missed it. Thank you!
Rahul Sivagaminathan
Rahul Sivagaminathan am 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.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Introduction to Installation and Licensing finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by