主要内容

保存

将工作区变量保存到文件中

描述

例子

保存(文件名在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-file Version 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作为文件中的单个变量newstruct.mat

保存(“newstruct.mat”“结构”“s1 ');

检查文件的内容使用函数。

disp (newstruct.mat的内容:“
newstruct.mat内容:
谁(“- file”“newstruct.mat”
Name Size Bytes Class Attributes a 1x1 8 double b 1x2 246 cell c 1x6 12 char

创建两个变量,并将它们保存到7.3版本的mat文件中example.mat

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

的命令语法也可以使用保存操作。

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

创建两个变量并保存它们,不压缩,到一个版本77.3MAT-file叫做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”
Name Size Bytes Class Attributes p 1x10 80 double q 10x10 800 double

创建一个新变量,一个,并将其追加到mat -文件中。

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

查看mat -文件的内容。

谁(“- file”“test.mat”
Name Size Bytes Class Attributes 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”
Name Size Bytes Class Attributes A 5x5 200 double B 10x10 800 double

创建一个新变量C不压缩地把它附加到myFile.mat

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

查看mat -文件的内容。

谁(“- file”“myFile.mat”
Name Size Bytes Class Attributes A 5x5 200 double B 10x10 800 double C 1x1 8 double

输入参数

全部折叠

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

如果文件名没有扩展(即没有句点后跟文本),而格式,则MATLAB追加.mat.如果文件名不包括完整路径,MATLAB保存到当前文件夹。您必须具有写入文件的权限。

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

请注意

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

若要将工作区变量保存到远程位置的mat文件中,请指定文件名作为此表单的统一资源定位符(URL):

scheme_name://path_to_file/my_file.mat

根据你的地理位置scheme_name可以是该表中的值之一。

远程位置 scheme_name
Amazon S3™ s3
Windows Azure®Blob存储 wasbwasbs

保存函数只支持将7.3版的mat金宝app文件保存到远程位置。

有关设置MATLAB访问在线存储服务的更多信息,请参见使用远程数据

例子:“myFile.mat”

例子:s3: / / bucketname / path_to_file / my_file.mat '

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

请注意

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

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

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

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

的价值fmt 文件格式
“垫”

二进制MAT-file格式。

“ascii”

8位精度的文本格式。

- tabs“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

当保存到远程位置时,保存只支持指定金宝appfmt作为“垫”

数据类型:字符|字符串

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

的价值版本 MATLAB版本中的负载 金宝app支持的功能 压缩 每个变量的最大大小
“-v7.3” 7.3 (R2006b)及以上版本

保存和加载部分变量,以及版本7的所有特性。版本7.3还支持使用金宝app“-nocompression”选择。

是的(默认) 64位计算机≥2gb
v7的 7.0 (R14)及以上版本

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

是的(默认) 每个变量2^31字节
“6” 5 (R8)及以上版本

n维数组、单元格数组、结构数组、大于19个字符的变量名,以及版本4的所有功能。

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

二维、字符和稀疏数组。

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

如果任何数据项需要指定版本不支持的特性,MATLAB将不保存这些项并发出警告。金宝app不能指定比MATLAB软件当前版本更晚的版本。

请注意

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

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

数据类型:字符|字符串

限制

  • 在处理远程数据时,保存功能:

    • 不支持保存到HDF金宝appS™

    • 不支持以mat文件金宝app以外的任何格式保存工作区变量。

提示

  • 要想在创建ASCII文件时更灵活,请使用

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

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

之前介绍过的R2006a