主要内容

保存

将工作区变量保存到文件

描述

例子

保存(文件名在MATLAB中保存当前工作空间中的所有变量®格式化二进制文件(MAT-file)调用文件名.如果文件名存在,保存覆盖文件。

例子

保存(文件名变量仅保存结构数组指定的变量或字段变量

例子

保存(文件名变量fmt以指定的文件格式保存fmt.的变量参数是可选的。如果您未指定变量,保存函数保存工作区中的所有变量。

例子

保存(文件名变量版本保存到指定的mat文件版本版本.的变量参数是可选的。

例子

保存(文件名变量版本, ' -nocompression ')将变量保存到mat文件中,不进行压缩。的“-nocompression”flag只支持mat金宝app文件版本7(默认)和版本7.3。因此,您必须指定版本作为v7的“-v7.3”.的变量参数是可选的。

例子

保存(文件名变量“附加”)向现有文件添加新变量。如果一个变量已经存在于mat文件中,那么保存使用工作空间中的值覆盖它。

ASCII文件,“添加”将数据添加到文件的末尾。

要附加到版本6的mat文件,还必须包含“6”作为输入参数。

例子

保存(文件名变量“添加”,“-nocompression”)将新变量添加到现有文件而无需压缩。现有文件必须是Mat文件7(默认)或7.3。

例子

保存文件名是语法的命令形式。命令表单需要更少的特殊字符。您不需要键入括号或用单引号括起输入。用空格而不是逗号分隔输入。

例如,保存一个名为test.mat,这些语句是等价的:

保存测试。命令形式保存('test.mat') %函数形式

可以包含前面语法中描述的任何输入。例如,保存命名的变量X

保存测试。('test.mat','X') %函数形式

当任何输入时,请勿使用命令表单,例如文件名,是变量或字符串。

例子

全部折叠

将工作区中的所有变量保存到二进制mat文件中,test.mat.如果文件名是一个变量,使用函数语法。

文件名=“test.mat”;保存(文件名)

否则,您也可以使用命令语法。

保存test.mat

从工作区中删除变量,然后使用负载函数。

明确负载(“test.mat”

创建和保存两个变量,p,发送到一个名为pqfile.mat

p =兰德(10);q =(10)的;保存('pqfile.mat'“p”“问”

Matlab®将变量保存到文件中,pqfile.mat,在当前文件夹中。

你也可以使用命令语法来保存变量,p

保存pqfile.matp

创建两个变量,将它们保存到ASCII文件,然后查看文件的内容。

p =兰德(10);q =(10)的;保存(“pqfile.txt”“p”“问”“ascii”) 类型(“pqfile.txt”

类型功能显示文件的内容。

或者,使用命令语法保存手术。

保存pqfile.txtp美国信息交换标准代码

创建一个结构,s1,包含三个字段,一个b,c

s1。一个= 12.7; s1.b = {'abc', (4 5;6 7]};s1.c =“你好!”;

保存结构的字段s1作为文件中的单个变量judstruct.mat

保存(“newstruct.mat”'--truct'“s1 ');

控件检查文件的内容函数。

DISP(newstruct.mat的内容:“
newstruct.mat内容:
谁(“- file”“newstruct.mat”
名称大小字节类属性A 1x1 8 Double B 1x2 246 Cell C 1x6 12 Char

创建两个变量并将其保存到名为7.3版本的版本example.mat.

一个=兰德(5);B =魔法(10);保存('example.mat'“一个”“B”“-v7.3”

您还可以使用命令语法保存手术。

保存example.mat.一个B-v7.3.

创建两个变量并将它们保存到Version中,不需要压缩77.3麦克锉myFile.mat

一个=兰德(5);B =魔法(10);保存('myfile.mat'“一个”“B”“-v7.3”“-nocompression”

属性的命令语法保存手术。

保存myFile.mat一个B-v7.3.-nocompression

“-nocompression”标志有助于为那些大于的那些变量提供更快的保存2GB或那些不能从压缩中获益的。

将两个变量保存到一个mat文件中。然后,将第三个变量附加到同一个文件中。

p =兰德(10);q =(10)的;保存(“test.mat”“p”“问”

查看MAT文件的内容。

谁(“- file”“test.mat”
名称大小字节类属性p 1x10 80双q 10x10 800双

创建一个新变量,一个,并将其附加到Mat文件。

= 50;保存(“test.mat”“一个”“添加”

查看MAT文件的内容。

谁(“- file”“test.mat”
名称大小字节类属性A 1x1 8 Double P 1X10 80 Double Q 10x10 800 Double

的变量,一个,被附加到test.mat,不覆盖以前的变量,p

请注意

要附加到版本6的mat文件,请同时指定两者“6”“添加”.例如,要保存变量一个的文件,test.mat, 称呼:

保存(“test.mat”“一个”“6”“添加”

将两个变量保存到一个mat文件中。然后,在不压缩的情况下将第三个变量附加到同一个文件中。

创建两个变量一个B并将它们保存到mat文件版本77.3.默认情况下,保存功能压缩变量一个B在保存它们之前myFile.mat

一个=兰德(5);B =魔法(10);保存('myfile.mat'“一个”“B”“-v7.3”

查看MAT文件的内容。

谁(“- file”'myfile.mat'
名称大小字节类属性A 5x5 200双B 10x10 800双

创建一个新变量C然后将它附加到myFile.mat

C = 5;保存('myfile.mat'“C”“添加”“-nocompression”

查看MAT文件的内容。

谁(“- file”'myfile.mat'
名称大小字节类属性A 5x5 200双B 10x10 800双C 1x1 8双

输入参数

全部折叠

文件名称,指定为字符向量或字符串标量。如果您未指定文件名,保存函数保存到名为matlab.mat

如果文件名没有延伸(即没有时间遵循文本),以及价值格式,则MATLAB附加.mat.如果文件名不包括完整路径,MATLAB保存到当前文件夹。你必须有写这个文件的权限。

当使用命令形式的保存,无需将输入括在单引号中。然而,如果文件名包含一个空格,必须将参数用单引号括起来。例如,保存的文件名withspace.mat

请注意

什么时候不使用命令形式文件名是一个字符串。

例子:'myfile.mat'

要保存的变量名,指定为字符向量或字符串标量。当使用命令形式的保存,不需要将输入括在单引号中。

请注意

什么时候不使用命令形式变量是一个字符串。

变量可以是下列形式之一。

形式的变量输入 变量保存
var1,...,变华 保存列出的变量,将其指定为单个字符向量或字符串。
使用'*'匹配模式的通配符。例如,保存('filename.mat','a *')保存文件中的所有变量一个
'-regexp',expr1,…,exprN 仅保存名称匹配的变量正则表达式,指定为字符向量或字符串。例如,保存(“filename.mat”、“正则表达式”,“^我的”,“^外胎”)只保存文件名以其开头的变量我的t
“结构”,structName. 指定的标量结构的字段structName.作为文件中的单个变量。例如,保存(“filename.mat”、“结构”,“S”)保存标量结构,年代
“结构”,structName,field1,…,fieldN 将指定标量结构的指定字段存储为文件中的单个变量。例如,保存('filename.mat',' - struct','s','a','b')保存字段s.a.mit获得
“结构”,structName.“正则表达式”,expr1,…,exprN 仅存储名称匹配的字段正则表达式,指定为字符向量或字符串。

文件格式,指定为下列格式之一。当使用命令形式的保存,不需要将输入括在单引号或双引号中,例如,保存myFile.txt -ascii -tabs

的价值fmt 文件格式
“垫”

二进制MAT-file格式。

“ascii”

具有8位精度的文本格式。

'-ascii',' - 标签'

用制表符分隔的文本格式,精度为8位数字。

“ascii”、“总价值的

具有16位精度的文本格式。

- tabs ascii,总价值”、“”

用制表符分隔的文本格式,精度为16位数字。

对于mat文件,存储在一台机器上并加载在另一台机器上的数据保留了不同机器浮点格式所允许的尽可能多的准确性和范围。

使用一种文本格式将MATLAB数值保存到文本文件中。在这种情况下:

  • 每个变量必须是二维的双倍的数组中。

  • 输出只包含复数的实分量。

  • MATLAB将数据从每个变量按顺序写入文件。如果您打算使用负载函数读取文件时,所有变量必须具有相同的列数。的负载函数从文件中创建单个变量。

如果指定了文本格式,并且任何变量都是二维字符数组,那么MATLAB将字符转换为相应的内部ASCII码。例如,'abc'在文本文件中显示如下:

9.7000000 e + 001 9.8000000 9.9000000 e + e + 001 001

数据类型:char|字符串

mat文件版本,指定为下列之一。当使用命令形式的保存,不需要将输入括在单引号或双引号中。

的价值版本 MATLAB版本中的加载 金宝app支持的特点 压缩 每个变量的最大大小
“-v7.3” 7.3(r2006b)或更高版本

保存和加载部分变量以及Version 7的所有特性。版本7.3还支持在不压缩的情况下使金宝app用“-nocompression”选项。

是的(默认) 在64位计算机上≥2gb
v7的 7.0 (R14)或更高版本

Unicode®字符编码,它允许在使用不同默认字符编码方案的系统之间共享文件,以及所有Version 6特性。版本7还支持在不压缩的情况下使金宝app用“-nocompression”选项。

是的(默认) 每个变量2^31个字节
“6” 5(r8)或更高版本

n维数组,单元格阵列,结构阵列,变量名超过19个字符,以及所有版本4功能。

没有 每个变量2^31个字节
v4的 所有

二维双倍的、字符和稀疏数组。

没有 每个数组有1亿个元素,每个变量有2^31个字节

如果任何数据项都需要指定版本不支持的功能,则Matlab不保存这些项目并发出警告。金宝app您无法在当前版本的MATLAB软件中指定版本。

请注意

版本7.3的mat文件使用基于HDF5的格式,需要一些开销存储来描述文件的内容。对于单元数组、结构数组或其他可以存储异构数据类型的容器,Version 7.3 mat -文件有时比Version 7 mat -文件大。

要查看或设置mat文件的默认版本,请转到首页选项卡中环境部分中,点击首选项.选择马铃薯>一般>mat文件然后选择aMAT-file保存格式选项。

数据类型:char|字符串

尖端

  • 有关创建ASCII文件的更多灵活性,请使用dlmwrite.

  • 控件保存图形对象保存函数可能导致生成一个大文件,因为文件包含重新生成对象所需的所有信息。

  • 避免使用保存函数。使用savefig函数来代替。使用保存在R2014b或更高版本中保存一个数字使得mat文件在MATLAB的早期版本中不可访问。如果你使用保存要保存图形,则该功能显示警告消息。使用前删除任何数字保存.请记住,这些图形可能并不直接位于您的工作空间中。例如,它们可能存储在回调函数的结构中或工作区中。

之前介绍过的R2006a