主要内容

保存

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

描述

例子

保存(文件名将当前工作区的所有变量保存在MATLAB中®格式化的二进制文件(mat -文件)称为文件名.如果文件名存在,保存覆盖文件。

例子

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

例子

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

例子

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

例子

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

例子

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

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

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

例子

保存(文件名变量“添加”,“-nocompression”)向现有文件添加新变量而不进行压缩。现有文件必须是mat文件版本7(默认)或7.3。

例子

保存文件名是命令格式的语法。命令表单需要的特殊字符较少。您不需要键入圆括号或将输入括在单引号或双引号中。用空格代替逗号分隔输入。

例如,要保存一个名为test.mat,这些表述是等价的:

保存测试。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”
名称大小字节类属性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”Flag有助于更快地保存大于2GB或那些不能从压缩中受益的文件。

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

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

查看mat文件的内容。

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

创建一个新变量,一个,并将其附加到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 double B 10x10 800 double

创建一个新变量C然后不加压缩的附加到myFile.mat

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

查看mat文件的内容。

谁(“- file”“myFile.mat”
名称大小字节串类属性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文件保存到远程位置。

有关设置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

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

数据类型:字符|字符串

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

的价值版本 MATLAB版本中的加载 支持的功能 压缩 每个变量的最大大小
“-v7.3” 7.3 (R2006b)或更高版本

保存和加载部分变量,以及所有版本7的特性。方法还支持保存变量而不进行压缩“-nocompression”选择。

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

Unicode®字符编码,它支持在使用不同默认字符编码方案的系统和所有版本6特性之间共享文件。方法还支持保存变量而不进行压缩“-nocompression”选择。

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

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

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

二维、字符和稀疏数组。

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

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

请注意

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

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

数据类型:字符|字符串

限制

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

    • 不支持保存到HDFS™

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

提示

  • 若要更灵活地创建ASCII文件,请使用

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

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

版本历史

之前介绍过的R2006a

Baidu
map