我刚刚从PC切换到Mac,我发现我以前用PC编写的许多MATLAB代码在我的Mac上无效!我已经在MATLAB工作了一段时间,但我还不是专家。
在寻找PC和Mac之间的差异后,我注意到有些事情确实有所不同,但我很想知道是否需要查看我所有编写的MATLAB代码并手动更新以使其工作在我的Mac上。
请告诉我这里最好的事情。
示例:
clear all
cd 'c:\users\sss\Desktop\MATLAB\project\DataFile\'
load data
cd ..
为什么这不起作用?是因为Mac上的MATLAB需要反斜杠吗?
答案 0 :(得分:2)
当然,如果您尝试在Mac上访问Windows风格的路径,则会出错。
MATLAB包含一组函数,可以很容易地使代码在这些问题上跨平台。例如,查看函数fullfile
,fileparts
,filesep
,pathsep
,ispc
和ismac
。
我担心目前,您可能需要使用上述功能重新编写特定于Mac或跨平台的内容。
答案 1 :(得分:0)
一种方法是设置路径变量或变量,以确定数据的保存位置。您甚至可以使用computer
或ismac
和ispc
自动切换到正确的版本:
if ispc
dpath = 'c:\users\sss\Desktop\MATLAB\project\DataFile\';
elseif ismac
dpath = '/Users/sss/MATLAB/project/DataFile/';
end
load (fullfile(dpath, 'data.mat'));
如果在/ MATLAB / project /的子目录中有多个文件,则可以设置项目目录(类似于matlabroot
但指向保存该项目文件的位置),然后使用{{1选择正确的子目录。
e.g。给定一个指向适当计算机上/ MATLAB / project /的目录的目录,这些目录分别产生/ MATLAB / project / data和MATLAB / project / output中的文件名:
fullfile