主要内容

matlab.io.datastore.fileset

用于在数据存储中收集文件的文件集

描述

matlab.io.datastore.fileset对象可帮助您在迭代遍历文件时处理大量文件。使用文件集对象与DSFILEREDER对象可以管理和读取数据存储的文件。

创建

描述

例子

FS= matlab.io.datastore.fileset(地点创建一个文件集基于指定位置收集文件的对象。

FS= matlab.io.datastore.fileset(地点,,,,名称,价值指定文件扩展名,无论是包括子文件夹还是设置对象属性。您可以指定多个名称值对。用引号包装名称。

输入参数

展开全部

文件或文件夹,包括文件集对象,指定为字符向量,字符向量的单元格数组,字符串数组或结构。如果文件不在当前文件夹中,则地点必须是完整或相对的路径。指定文件夹的子文件夹中的文件未自动包含在文件集目的。

Typically for a Hadoop®工作流程,当您指定时地点作为结构,它必须包含字段文件名,,,,抵消, 和尺寸。此要求使您可以使用地点直接与初始化ataTastore方法的方法matlab.io.datastore.hadooplocationbate班级。例如,请参阅添加对H金宝appadoop的支持

You can use the wildcard character (*) when specifying地点。指定此字符包含文件集对象中匹配文件夹中的所有匹配文件或所有文件。

如果文件在本地不可用,则文件或文件夹的完整路径必须是统一的资源定位器(URL),例如
hdfs://主机名Portnumber/path_to_file

数据类型:char|细胞|细绳|结构

名称值对参数

指定可选的逗号分隔对名称,价值参数。姓名是参数名称和价值是相应的值。姓名必须出现在引号中。您可以按任何顺序指定几个名称和值对参数NAME1,Value1,...,Namen,Valuen

例子:FS= matlab.io.datastore.fileset(地点,,,,“包括橡皮folders”,真实)

子文件夹包含标志,指定为数字或逻辑1((真的) 或者0((错误的)。指定真的在每个文件夹中包括所有文件和子文件夹,或错误的仅包括每个文件夹中的文件。

例子:“包括橡皮folders”,真实

文件扩展名,指定为字符向量,字符向量的单元格数组或字符串数​​组。您可以使用空的报价''表示没有扩展的文件。

如果“ fileextensions'未指定,然后blockedfileset自动包含所有文件扩展名。

例子:“ fileextensions','。jpg'

例子:'fileextensions',{'。txt','。csv'}

特性

展开全部

备用文件系统根路径,指定为字符串数组或单元格数组。利用“替代filesystemroots”当您在本地计算机上创建数据存储时,需要访问和处理另一台计算机上的数据(可能是另一个操作系统)。另外,使用并行计算工具箱™和MATLAB®Parallel Server™,并且数据存储在您的本地计算机上,并具有在不同平台云或群集机上可用的数据的副本,您必须使用“替代filesystemroots”关联根路径。

  • 要关联一组彼此等效的根路径,请指定“替代filesystemroots”作为字符串数组。例如,

    [“ z:\ datasets”,“/mynetwork/dataSet”]

  • 要关联到数据存储的多组根路径,请指定“替代filesystemroots”作为包含多行的单元格数组,其中每一行代表一组等效的根路径。将单元格数组中的每一行指定为字符串阵列或字符向量的单元格数组。例如:

    • 指定“替代filesystemroots”作为字符串数组的单元格数组。

      {[“ z:\ dataSets”,“/mynetwork/dataSets”]; ... [y:\ dataSets',“/mynetwork2/dataSets”,“ s:\ dataSets”]}

    • 或者,指定“替代filesystemroots”作为字符矢量的细胞阵列的细胞阵列。

      {{{'z:\ dataSets','/mynetwork/dataSets'}; ... {'y:\ dataSets','/mynetwork2/dataSets','s:\ dataSets'}}}

的价值“替代filesystemroots”必须满足这些条件:

  • 包含一个或多个行,每行指定一组等效的根路径。

  • 每行指定多个根路径,每个根路径必须至少包含两个字符。

  • 根路径是唯一的,不是彼此的子文件夹。

  • 至少包含一个指向文件位置的根路径条目。

有关更多信息,请参阅设置用于处理不同机器或群集上的数据存储

例子:[“ z:\ datasets”,“/mynetwork/dataSet”]

数据类型:细绳|细胞

此属性仅阅读。

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

例子:fs.numfiles

数据类型:双倍的

此属性仅阅读。

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

例子:fs.numfilesread

数据类型:双倍的

此属性仅阅读。

有关文件的信息matlab.io.datastore.fileset对象,返回为matlab.io.datastore.fileinfo具有这些属性的对象:

  • 文件名- 文件的名称文件集目的。该名称包含文件的完整路径。

  • 文件大小-尺寸of the file in number of bytes.

有关特定文件的信息,请指定文件索引。例如,fs.fileinfo(2)返回第二个文件的文件名和文件大小。如果您打电话fs.fileinfo指定(:)或者在未指定索引的情况下,它返回所有文件的信息。

例子:fs.fileinfo(2)

对象功能

hasNextFile 确定文件集是否在文件集中有另一个文件
Nextfile 下一个文件或文件块的信息
haspreviousfile 确定文件集是否具有先前的文件
先前的file 文件集中的上一个文件的信息
进步 确定已读取了多少个块或文件
Maxpartitions Maximum number of partitions
分割 分区文件集对象
子集 创建数据存储或文件集的子集
重置 重置文件集对象

例子

全部收缩

为文件集中的特定文件创建文件集和查询信息。

创建文件集fs用于文件集。

文件夹= {“事故.mat”,,,,'Airlineresults.mat',,,,“人口普查”,,,,'Earth.mat'}
文件夹=1x4单元第1至3列{'treactes.mat'} {'Airlineresults ...'} {'Census.mat'}第4列{'Earth.mat'}
fs = matlab.io.datastore.fileset(文件夹)
fs = with with属性的文件集:numfiles:4 numfilesread:0 fileinfo:显示所有4个文件的fileinfo fileinfo:nternatefilesystemrotsroots:{}

使用要么获取特定文件的信息Nextfilefunction or by querying theFileInfo属性并指定索引。获取使用连续文件的信息Nextfile。例如,获取集合中前两个文件的信息。

file1 = nextfile(fs)
file1 = 1x1 FileInfo Filename FileSize ______________________________________________________________________________ ________ "/mathworks/devel/bat/Bdoc21b/build/matlab/toolbox/matlab/demos/accidents.mat" 7343
file2 = nextfile(fs)
file2 = 1x1 FileInfo Filename FileSize ___________________________________________________________________________________ __________ "/mathworks/devel/bat/Bdoc21b/build/matlab/toolbox/matlab/demos/airlineResults.mat" 1.5042e+05

查询文件信息属性以获取有关集合中最后一个文件的信息。

lastFile = fs.fileinfo(4)
lastfile = 1 x1 FileInfo文件名文件大小__________________________________________________________________________ ________ "/mathworks/devel/bat/Bdoc21b/build/matlab/toolbox/matlab/demos/earth.mat" 32522
在R2020a中引入