文档

matlab.io.datastore。DsFileSet类

包:matlab.io.datastore

在数据存储文件集对象的集合文件

描述

DsFileSet帮助您管理对象的迭代处理大型文件集的。使用DsFileSet对象在一起DsFileReader从你的数据存储对象来管理和阅读文件。

建设

fs= matlab.io.datastore.DsFileSet (位置)返回一个DsFileSet对象根据指定的一组文件位置

fs= matlab.io.datastore.DsFileSet (位置,名称,值)指定额外的参数DsFileSet使用一个或多个名称-值对参数对象。的名字也可以是属性名,价值相应的价值。的名字必须出现在单引号()。您可以指定几个名称-值对参数在任何顺序Name1, Value1,…,的家

输入参数

全部展开

文件或文件夹包含的文件,指定为一个特征向量,单元阵列的特征向量,字符串,或结构。如果文件不在当前文件夹,然后位置必须全部或相对路径。指定文件夹的子文件夹内文件不自动包含在文件集。

通常对于一个Hadoop®工作流,当您指定位置作为一个结构,它必须包含的字段文件名,抵消,大小

您可以使用通配符(*)时指定位置。这个字符显示所有匹配的文件或匹配所有文件文件夹中包含的文件集。

如果不是本地可用的文件,文件或文件夹的完整路径必须是国际化资源标识符(IRI),等
hdfs: / /主机名:portnumber/path_to_file

数据类型:字符|细胞|字符串|结构体

名称-值对的观点

指定可选的逗号分隔条名称,值参数。的名字参数名称和吗价值相应的价值。的名字必须出现在单引号(' ')。您可以指定几个名称和值对参数在任何顺序Name1, Value1,…,的家

例子:FileExtensions, {“jpg”、“.tif”}包括所有文件jpg.tif扩展的文件集对象。

全部展开

文件扩展名,指定为逗号分隔组成的“FileExtensions”一个特征向量,单元阵列特征向量,或字符串。您可以使用空引用代表文件没有扩展。

如果“FileExtensions”没有指定,那么DsFileSet自动包括所有的文件扩展名。

例子:“FileExtensions”、“jpg”

例子:FileExtensions, {' . txt ', ' . csv '}

数据类型:字符|细胞|字符串

全部展开

子文件夹包含标志,指定为逗号分隔组成的“IncludeSubfolders”真正的。指定真正的包括每个文件夹内的所有文件和子文件夹只包括每个文件夹内的文件。

例子:“IncludeSubfolders”,真的

数据类型:逻辑|

属性

全部展开

这个属性是只读的。

文件集的文件数量,指定为数字标量。

例子:fs.NumFiles

数据类型:

这个属性是只读的。

分大小,指定为“文件”或一个数字标量。

的值分配给FileSplitSize命令的输出nextfile方法。

  • 如果FileSplitSize“文件”,那么nextfile方法返回一个表文件名,文件大小,抵消,SplitSize。的价值SplitSize设置等于文件大小

  • 如果FileSplitSize是一个数字标量n,那么nextfile方法返回文件名,文件大小,抵消,SplitSize。的价值SplitSize设置等于FileSplitSize。这些信息是用来阅读n文件的字节。随后的调用nextfile方法返回的信息来帮助阅读n字节的同一个文件到文件的末尾。

例子:“FileSplitSize”, 20

数据类型:|字符

方法

matlab.io.datastore.DsFileSet.hasfile 确定多个文件中可用文件集对象
matlab.io.datastore.DsFileSet.maxpartitions 最大数量的分区
matlab.io.datastore.DsFileSet.nextfile 下一个文件或文件块的信息
matlab.io.datastore.DsFileSet.partition 分区文件集对象
matlab.io.datastore.DsFileSet.reset 重置文件集对象
matlab.io.datastore.DsFileSet.resolve 所有文件在文件集对象的信息

例子

获取文件信息收集的文件

创建一个文件集对象,获取文件信息时,或获得信息中的所有文件文件集对象。

创建一个对象的所有文件集.mat文件从演示文件夹中。

文件夹= fullfile (matlabroot,“工具箱”,matlab的,“演示”);fs = matlab.io.datastore.DsFileSet(文件夹,“IncludeSubfolders”,真的,“FileExtensions”,“.mat”);

获取信息的第一和第二文件从文件集对象。

fTable1 = nextfile (fs);%的第一个文件fTable2 = nextfile (fs);%的第二个文件

得到所有文件信息获取信息的一个文件的时间和收集到表的信息。

英国《金融时报》=细胞(fs.NumFiles, 1);%使用电池效率i = 1;重置(fs);%重置文件集的开始hasfile (fs)英国《金融时报》{我}= nextfile (fs);我=我+ 1;结束allFiles = vertcat(英国《金融时报》{:});

另外,在所有文件在同一时间获得信息。

allfiles =解决(fs);

提示

  • 如果你使用DsFileSet在您的自定义数据存储对象作为一个属性,然后你必须实现copyElement方法。定制复制操作的更多信息,请参阅自定义复制操作。的一个示例实现copyElement方法,请参阅开发自定义数据存储

介绍了R2017b

这个主题有帮助吗?