1
我已經寫下了下面的代碼。基本上它是檢查一些路徑是否已經在matlab搜索路徑中。如果找不到,則會添加路徑。用strcmp搜索matlab搜索路徑
問題是strcmp總是返回一個零矢量,儘管路徑實際上已經存在於currPath中。我實際上從currPath拷貝了一個路徑來檢查我是否得到了正確的值。不知道這是爲什麼?
% get current path
currPath = strsplit(path, ';')';
currPath = upper(currPath);
% check if required paths exist - if not add them
pathsToCheck = ['C:\SOMEFOLDER\MADEUP'];
pathsToCheck = upper(pathsToCheck);
for n = 1 : length(pathsToCheck(:, 1))
index = strcmp(currPath, pathsToCheck(n, 1));
if sum(index) > 0
addpath(pathsToCheck{t, 1}, '-end'); % add path to the end
end
end
% save changes
savepath;
在這個例子中,'pathsToCheck'是一個'char',所以'length(pathsToCheck(:, 1))'將是單個字符的長度(== 1)。同樣,'pathsToCheck(n,1)'總是一個字符,所以'strcmp'失敗。那麼,這只是在這個例子中是真的嗎?如果是,請更新:)如果不是,問題解決。 –
謝謝!這對我來說有點愚蠢,漫長的一天 – mHelpMe
那麼,那是你的問題嗎?或者只是一個例子中的問題? –