MATLAB的save⽤法
save
将⼯作区变量保存到⽂件中
语法
save(filename)
save(filename,variables)
save(filename,variables,fmt)
save(filename,variables,version)
save(filename,variables,version,'-nocompression')
save(filename,variables,'-append')
save(filename,variables,'-append','-nocompression')
save filename
说明
save() 将当前⼯作区中的所有变量保存在 MATLAB® 格式的⼆进制⽂件(MAT ⽂件)filename中。如果 filename 已存在,save 会覆盖该⽂件。
save(,) 仅保存 variables 指定的结构体数组的变量或字段。
save(,,) 以 fmt 指定的⽂件格式保存。variables 参数为可选参数。如果您不指定 variables,save 函数将保存⼯作区中的所有变量。
save(,,) 保存为 version 指定的 MAT ⽂件版本。variables 参数为可选参数。
save(,,,'-nocompression') 将变量保存到 MAT ⽂件,⽽不压缩。'-nocompression' 标志仅⽀持 7.3 版的 MAT ⽂件。因此,您必须
将 version 指定为 '-v7.3'。variables参数为可选参数。
save(,,'-append') 将新变量添加到⼀个现有⽂件中。如果 MAT ⽂件中已经存在变量,则 save 会使⽤⼯作区中的值覆盖它。
对于 ASCII ⽂件,'-append' 会将数据添加到⽂件末尾。
要追加到版本 6 的 MAT ⽂件,您还必须包括 '-v6' 作为输⼊参数。
save(,,'-append','-nocompression') 将新变量添加到⼀个现有⽂件中,⽽不进⾏压缩。现有⽂件必须是 7.3 版的 MAT ⽂件。
save 是命令形式的语法。命令形式需要的特殊字符更少。您⽆需键⼊括号或者将输⼊括在单引号或双引号内。使⽤空格(⽽不是逗号)分隔各个输⼊项。
例如,要保存名为 test.mat 的⽂件,这些语句是等效的:
save test.mat % command form
save('test.mat') % function form
您可以包括先前语法中介绍的任何输⼊。例如,要保存名为 X 的变量:
save test.mat X % command form
save('test.mat','X') % function form
请勿在任何输⼊项(例 如 filename)为变量时使⽤命令格式。
输⼊参数
filename - ⽂件名字
'matlab.mat' (默认) | 字符向量 | 字符串
⽂件的名称,指定为字符向量或字符串。如果您未指定 filename,save 函数保存为名为 matlab.mat 的⽂件。
如果 filename 没有扩展名(即没有点以及紧随其后的⽂本),并且没有指定 format 的值,则 MATLAB 会追加 .mat。如果 filename 不包含完整路径,MATLAB 将保存到当前⽂件夹中。您必须具有⽂件的写⼊权限。
使⽤命令形式的 save 时,不需要将输⼊括在单引号或双引号内。但如果 filename 包含空格,则您必须将参数括在单引号中。例如,save 'filename withspace.mat'。
⽰例: 'myFile.mat'
数据类型: char | string
variables - 要保持的变量名称
字符向量 | 字符串
要保存的变量的名称,指定为⼀个或多个字符向量或字符串。使⽤命令形式的 save 时,不需要将输⼊括在单引号或双引号内。variables 可以采⽤下列形式之⼀。
variables 输⼊的格式要保存的变量
var1,...,varN 保存列出的变量,指定为单个字符向量或字符串。
可使⽤ '*' 通配符来匹配模式。例如,save('filename.mat','A*') 会将以 A 开头的所有变量保存到⽂件中。
'-regexp',expr1,...,exprN 仅保存名称与匹配的变量,指定为字符向量或字符串。例如,save('filename.mat','-regexp','^Mon','^Tues') 仅将以 Mon 或 Tues 开头的变量保存到⽂件中。
'-struct',structName 将 structName 指定的标量结构体的字段作为单个变量存储在⽂件中。例如,save('filename.mat','-struct','S') 保存标量结构体 S。
'-
struct',structName,field1,...,fieldN 将指定标量结构体的指定字段作为单个变量存储在⽂件中。例如,save('filename.mat,'-struct','S','a','b') 保存字段 S.a 和 S.b。
'-struct',structName,'-
regexp',expr1,...,exprN
仅存储名称与匹配的字段,指定为字符向量或字符串。
数据类型: char | string
fmt - ⽂件格式
'-mat' (默认) | '-ascii' | '-ascii','-tabs' | '-ascii','-double' | '-ascii','-double','-tabs'
⽂件格式,指定为下列值之⼀。使⽤命令形式的 save 时,您⽆需将输⼊括在单引号或双引号中,例如 -ascii -tabs。
fmt 的值⽂件格式
'-mat'⼆进制的 MAT ⽂件格式。
'-ascii'具有 8 位精度的⽂本格式。
'-ascii','-tabs'具有 8 位精度的以制表符分隔的⽂本格式。
'-ascii','-double'具有 16 位精度的⽂本格式。
'-ascii','-double','-tabs'具有 16 位精度的以制表符分隔的⽂本格式。
对于 MAT ⽂件,如果数据保存在⼀台计算机上,然后在另⼀台计算机上加载,则会根据不同计算机上的浮点格式在最⼤程度上保留精度和范围。
使⽤其中⼀种⽂本格式将 MATLAB 数值保存为⽂本⽂件。在这种情况下:
每个变量都必须是⼆维 double 数组。
输出项仅包含复数的实部。
MATLAB 将每个变量的数据按顺序写⼊到⽂件中。如果您计划使⽤ load 函数读取该⽂件,所有变量都必须具有相同的列数。load 函数从⽂件中创建单个变量。
如果您指定⼀种⽂本格式且任⼀变量为⼆维字符数组,则 MATLAB 将字符转换为其对应的内部 ASCII
代码。例如,'abc' 在⽂本⽂件中显⽰为:
9.7000000e+001 9.8000000e+001 9.9000000e+001
数据类型: char | string
version - MAT⽂件版本
'-v7.3' | '-v7' | '-v6' | '-v4'
MAT ⽂件版本,指定为下列值之⼀。使⽤命令形式的 save 时,您⽆需将输⼊括在单引号或双引号中。
versio n 的值加载到的
MATLAB 版
本
⽀持功能压缩每个变量⼤⼩的最⼤值
'-v7.3'7.3 (R2006b)
或更⾼版本
保存并加载部分变量,以及版本 7 的所有功能。版本 7.3 还⽀持使⽤ '-
nocompression' 选项保存变量⽽不进⾏压缩。
是(默
认值)
≥ 2 GB(64 位计算机)
'-v7'7.0 (R14) 或
更⾼版本
Unicode® 字符编码。通过编码,可以在使⽤不同默认字符编码⽅案的系
统之间共享⽂件,还可以使⽤版本 6 的所有功能。
是每变量 2^31 字节
'-v6'5 (R8) 或更⾼
版本
N 维数组、元胞数组、结构体数组、⼤于 19 个字符的变量名称,以及版
本 4 的所有功能。
否每变量 2^31 字节
每数组 100,000,000 个元
'-v4'
全部⼆维 double 、字符和稀疏数组。否素,每变量 2^31 字节versio
n 的值加载到的MATLAB 版本⽀持功能压缩每个变量⼤⼩的最⼤值
如果任何数据项要求了某些功能,⽽指定的版本不⽀持这些功能,MATLAB 将不保存这些项并发出警告。您指定的 MATLAB 软件版本不
ascii文件夹怎么创建能⾼于当前使⽤的版本。
要查看或设置 MAT ⽂件的默认版本,请在“常规”预设中选择 MAT ⽂件保存格式选项。
提⽰为更加灵活地创建 ASCII ⽂件,可使⽤ 或 。
使⽤ save 函数保存图形对象可能导致⽂件较⼤,因为该⽂件包含重新⽣成对象需要的所有信息。
请避免使⽤ save 函数保存图窗。改⽤ 函数。在 R2014b 或更⾼版本中使⽤ save 保存图窗将使所得的 MAT ⽂件在早期 MATLAB 版本中⽆法访问。如果您使⽤ save 保存图窗,则函数会显⽰⼀个警告消息。在使⽤ save 之前删除所有图窗。请牢记图窗可能不直接存在于您的⼯作区中。例如,它们可能存储在结构体中或回调函数的⼯作区中。
⽂章转载源:
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论