nn::fs::FileStream Class

Syntax

class FileStream : 
    private nn::fs::IStream,
    private nn::fs::detail::FileBase,
    private ADLFireWall::NonCopyable

Description

Class for reading from and writing to files.

Can open the file specified by a path name and read and write data from and to it.

Although it is possible to use either wide-character strings or multibyte-character strings to specify the path name, use wide-character strings unless you have a special reason to do otherwise.

This class cannot be used to create new files in expanded save data. For that, use a TryCreateFile function that specifies the size.

Limitations

Any discrepancy between the buffer alignment and the read (or write) position while reading from (or writing to) a file causes an extreme drop in performance. We recommend that you use a multiple of four bytes both for the buffer alignment and for file reads (or writes).

Member Functions

FileStream Constructor.
Initialize Opens the specified file.
TryInitialize Opens the specified file.
Finalize Closes a file.
V ~FileStream Destructor.
V Read Reads the specified amount of data from a file into a buffer.
V TryRead Reads the specified amount of data from a file into a buffer.
V Write Writes the specified amount of data from a buffer to a file.
V TryWrite Writes the specified amount of data from a buffer to a file.
V Seek Changes the read/write position in a file.
V TrySeek Changes the read position of a file.
V GetPosition Gets the current read position relative to the start of the file.
V TryGetPosition Gets the current read position relative to the start of the file.
V SetPosition Sets the current read position relative to the start of the file.
V TrySetPosition Sets the current read position relative to the start of the file.
V GetSize Gets the file size.
V TryGetSize Gets the file size.
V SetSize Sets the file size.
V TrySetSize Sets the file size.
V Flush Writes the file cache back to the device.
V TryFlush Writes the file cache back to the device.

Class Hierarchy

nn::fs::IPositionable
  nn::fs::IInputStream
    nn::fs::IStream
      nn::fs::FileStream

Revision History

2011/03/14
Added limitations on read (or write) positions and buffer alignment.
2010/01/29
Initial version.

CONFIDENTIAL