String 矩阵不能保存在MATLAB中
我想将两个字符串保存到一个矩阵中,但收到以下错误: 使用“保存”时出错无法创建“LayersProperties.mat”,因为“Layers” 属性“”不存在 层(第29行)保存时出错('Layers Properties\LayersProperties.mat“,”LayersList“,”TabList“) 这是我的密码:String 矩阵不能保存在MATLAB中,string,matlab,matrix,save,String,Matlab,Matrix,Save,我想将两个字符串保存到一个矩阵中,但收到以下错误: 使用“保存”时出错无法创建“LayersProperties.mat”,因为“Layers” 属性“”不存在 层(第29行)保存时出错('Layers Properties\LayersProperties.mat“,”LayersList“,”TabList“) 这是我的密码: clear all clc % CREATE THE LIST OF DIFFERENT LAYERS LayersList = { 'Name'
clear all
clc
% CREATE THE LIST OF DIFFERENT LAYERS
LayersList = {
'Name' 'k [W/m/K]' 'D [mm]' 'e [-]' 'Color R' 'Color G' 'Color B'
'Glass 3.0' 1.00 3.000 0.92 0.6 0.8 1
'EVA DuPont Elvax' 0.23 0.2500 0.00 0.8 1 1
'Solar Cell' 180.00 0.180 0.00 0 0.45 0.74
'Bcksht DuPont 0.10' 0.36 0.100 0.90 1 1 1
'Bcksht DuPont 0.20' 0.36 0.200 0.90 1 1 1
'Bcksht DuPont 0.30' 0.36 0.300 0.90 1 1 1
'Bcksht DuPont 0.40' 0.36 0.400 0.90 1 1 1
'Bcksht DuPont 0.50' 0.36 0.500 0.90 1 1 1
'Bcksht DuPont 0.60' 0.36 0.600 0.90 1 1 1
'PVB Saflex PA41' 0.19 0.760 0.00 0.8 1 1
'Si rub. ELASTOSIL' 1.30 0.450 0.00 0.8 1 1
'POE-based ENGAGE' 0.29 0.450 0.00 0.8 1 1
};
TabList = {
'Name' 'rho_tab [Ohm m]' 'T_R_coeff [1/�C]' 'k [W/m/K]'
'Copper' 1.53E-08 3.90E-03 50
};
save('Layers Properties\LayersProperties.mat', 'LayersList', 'TabList')
遇到此类问题时,请尝试检查Matlab是否看到该文件夹实际存在:
isfolder('Layers Properties')
我猜它会返回false。然后,为了安全起见,最好使用绝对路径,并让脚本确保Matlab在正确的位置运行:
disp(cd()) % shows your current directory
cd(fileparts(mfilename(fullpath))) % goes to the folder where the running script is located
fullfile(cd(), 'Layers Properties') % builds the absolute path to the Layers Properties folder.
这可能会解决您的问题:
save(fullfile(cd(), 'Layers Properties', 'LayersProperties.mat'), 'LayersList', 'TabList')
编辑:如新图像所示,如果您已经在图层属性文件夹中,则只需执行以下操作:
save('LayersProperties.mat', 'LayersList', 'TabList')
遇到此类问题时,请尝试检查Matlab是否看到该文件夹实际存在:
isfolder('Layers Properties')
我猜它会返回false。然后,为了安全起见,最好使用绝对路径,并让脚本确保Matlab在正确的位置运行:
disp(cd()) % shows your current directory
cd(fileparts(mfilename(fullpath))) % goes to the folder where the running script is located
fullfile(cd(), 'Layers Properties') % builds the absolute path to the Layers Properties folder.
这可能会解决您的问题:
save(fullfile(cd(), 'Layers Properties', 'LayersProperties.mat'), 'LayersList', 'TabList')
编辑:如新图像所示,如果您已经在图层属性文件夹中,则只需执行以下操作:
save('LayersProperties.mat', 'LayersList', 'TabList')
我试过了,但没有成功。事实上,由于我在工作文件夹中,这应该不是问题。请尝试将文件夹名称中的空格替换为低于分数的
Layers\u Properties
(通常值得一试)@Hamed如果您在文件夹testfolder
中工作,则无法另存为保存('testfolder/something.mat')
,这不是它的工作方式。您只需保存('something.mat')
。如果您想在正在使用的文件夹中创建一个文件夹,则需要保存('./subfolder/something.mat')
。请阅读有关文件夹路径如何工作的文档。我尝试过,但没有成功。事实上,由于我在工作文件夹中,这应该不是问题。请尝试将文件夹名称中的空格替换为低于分数的Layers\u Properties
(通常值得一试)@Hamed如果您在文件夹testfolder
中工作,则无法另存为保存('testfolder/something.mat')
,这不是它的工作方式。您只需保存('something.mat')
。如果您想在正在使用的文件夹中创建一个文件夹,则需要保存('./subfolder/something.mat')
。请阅读有关文件夹路径如何工作的文档。