2016-09-05 8 views
0

Я пытаюсь установить временный каталог в MATLAB с помощью setenv('TEMP','C:\Temp') но, кажется, не имеют никакого эффекта:SetEnv ('TEMP') не оказывает никакого влияния на выходе TEMPDIR

код

t = tempdir 
setenv('TEMP','C:\Temp'); 
t = tempdir 

Выход

t = C:\Users\KAR~1\AppData\Local\Temp\ 
t = C:\Users\KAR~1\AppData\Local\Temp\ 

Я не могу найти причину, почему я не могу установить Temp плачевное таким образом.

+0

Вставка строки «Очистить все» в строке выше 'setenv (' TEMP ',' C: \ Temp ');' похоже, решает проблему. –

+0

Вместо этого напишите свой комментарий. – edwinksl

+0

Привет, это не проблема команды sentenv, а tempdir. (Я бы переименовал название вашего вопроса.) Отредактируйте эту функцию и посмотрите, как она закодирована: она использует постоянную переменную. Вот почему ваше ясное все, кажется, решает вашу проблему. В вашем случае setenv ('TEMP', 'C: \ Temp'); GETENV ('ТЕМП'); работает правильно. Обратите внимание, что функция setenv только изменяет переменную для сеанса MATLAB/не в ОС Windows. –

ответ

1

Изменение кода:

t = tempdir 
clear all; 
setenv('TEMP','C:\Temp'); 
t = tempdir 

, кажется, решить эту проблему.