Main Content

hasNextBlock

Determine if blocked file-set has another block

Since R2020a

Description

example

tf = hasNextBlock(bs) returns logical 1 (true) if another block is available to process in the BlockedFileSet object specified by bs. Otherwise, it returns logical 0 (false).

Examples

collapse all

Check if a blocked file-set has another block available to process and read the data iteratively.

Create a blocked file-set bs for a collection of files.

folder = {'accidents.mat','airlineResults.mat','census.mat','earth.mat'}
folder = 1x4 cell
    {'accidents.mat'}    {'airlineResults.mat'}    {'census.mat'}    {'earth.mat'}

bs = matlab.io.datastore.BlockedFileSet(folder)
bs = 
  BlockedFileSet with properties:

                   NumBlocks: 4
               NumBlocksRead: 0
                   BlockSize: 'file'
                   BlockInfo: BlockInfo for all 4 blocks
    AlternateFileSystemRoots: {}

Use the hasNextBlock and nextblock functions to read block information one block at a time while blocks remain in the set.

while hasNextBlock(bs)
   file = nextblock(bs)
end
file = 
  1x1 BlockInfo
                                                    Filename                                                    FileSize    Offset    BlockSize
    ________________________________________________________________________________________________________    ________    ______    _________

    "/mathworks/devel/bat/filer/batfs1904-0/Bdoc24a.2528353/build/matlab/toolbox/matlab/demos/accidents.mat"      7343        0         7343   


file = 
  1x1 BlockInfo
                                      Filename                                        FileSize     Offset    BlockSize 
    _____________________________________________________________________________    __________    ______    __________

    "/tmp/Bdoc24a_2528353_989294/tpe9f9016d/matlab-ex12893120/airlineResults.mat"    1.5042e+05      0       1.5042e+05


file = 
  1x1 BlockInfo
                                                  Filename                                                   FileSize    Offset    BlockSize
    _____________________________________________________________________________________________________    ________    ______    _________

    "/mathworks/devel/bat/filer/batfs1904-0/Bdoc24a.2528353/build/matlab/toolbox/matlab/demos/census.mat"      353         0          353   


file = 
  1x1 BlockInfo
                                                  Filename                                                  FileSize    Offset    BlockSize
    ____________________________________________________________________________________________________    ________    ______    _________

    "/mathworks/devel/bat/filer/batfs1904-0/Bdoc24a.2528353/build/matlab/toolbox/matlab/demos/earth.mat"     32522        0         32522  


Input Arguments

collapse all

Blocked file-set, specified as a matlab.io.datastore.BlockedFileSet object. To create a BlockedFileSet object, see matlab.io.datastore.BlockedFileSet.

Example: hasNextBlock(bs)

Version History

Introduced in R2020a