SdFat

- Main Page
- Classes
- Files

- Class List
- Class Hierarchy
- Class Members

Public Types | Public Member Functions | Static Public Attributes | Private Member Functions | List of all members
ifstream Class Reference

file input stream. More...

`#include <fstream.h>`

Inheritance diagram for ifstream:
[legend]
Collaboration diagram for ifstream:
[legend]

## Public Types
typedef unsigned int | fmtflags
typedef unsigned char | iostate
typedef int32_t | off_type
typedef uint8_t | openmode
typedef uint32_t | pos_type
enum | seekdir { beg, cur, end }
typedef uint32_t | streamsize

## Public Member Functions
bool | bad () const
void | clear (iostate state=goodbit)
void | close ()
bool | eof () const
bool | fail () const
char | fill ()
char | fill (char c)
fmtflags | flags () const
fmtflags | flags (fmtflags fl)
streamsize | gcount () const
int | get ()
istream & | get (char &ch)
istream & | get (char *str, streamsize n, char delim= '\n')
istream & | getline (char *str, streamsize n, char delim= '\n')
bool | good () const
| ifstream (const char *path, openmode mode=in)
istream & | ignore (streamsize n=1, int delim=-1)
bool | is_open ()
void | open (const char *path, openmode mode=in)
| operator const void * () const
bool | operator! () const
istream & | operator>> (istream &(*pf)(istream &str))
istream & | operator>> (ios_base &(*pf)(ios_base &str))
istream & | operator>> (ios &(*pf)(ios &str))
istream & | operator>> (char *str)
istream & | operator>> (char &ch)
istream & | operator>> (signed char *str)
istream & | operator>> (signed char &ch)
istream & | operator>> (unsigned char *str)
istream & | operator>> (unsigned char &ch)
istream & | operator>> (bool &arg)
istream & | operator>> (short &arg)
istream & | operator>> (unsigned short &arg)
istream & | operator>> (int &arg)
istream & | operator>> (unsigned int &arg)
istream & | operator>> (long &arg)
istream & | operator>> (unsigned long &arg)
istream & | operator>> (double &arg)
istream & | operator>> (float &arg)
istream & | operator>> (void *&arg)
int | peek ()
int | precision () const
int | precision (unsigned int n)
iostate | rdstate () const
istream & | seekg (pos_type pos)
istream & | seekg (off_type off, seekdir way)
fmtflags | setf (fmtflags fl)
fmtflags | setf (fmtflags fl, fmtflags mask)
void | setstate (iostate state)
void | skipWhite ()
pos_type | tellg ()
void | unsetf (fmtflags fl)
unsigned | width ()
unsigned | width (unsigned n)

## Static Public Attributes
static const fmtflags | adjustfield = left | right | internal
static const openmode | app = 0X4
static const openmode | ate = 0X8
static const iostate | badbit = 0X01
static const fmtflags | basefield = dec | hex | oct
static const openmode | binary = 0X10
static const fmtflags | boolalpha = 0x0100
static const fmtflags | dec = 0x0008
static const iostate | eofbit = 0x02
static const iostate | failbit = 0X04
static const iostate | goodbit = 0x00
static const fmtflags | hex = 0x0010
static const openmode | in = 0X20
static const fmtflags | internal = 0x0004
static const fmtflags | left = 0x0001
static const fmtflags | oct = 0x0020
static const openmode | out = 0X40
static const fmtflags | right = 0x0002
static const fmtflags | showbase = 0x0200
static const fmtflags | showpoint = 0x0400
static const fmtflags | showpos = 0x0800
static const fmtflags | skipws = 0x1000
static const openmode | trunc = 0X80
static const fmtflags | uppercase = 0x4000

## Private Member Functions
bool | open (FatFileSystem *fs, const char *path, uint8_t oflag)
bool | open (FatFile *dirFile, uint16_t index, uint8_t oflag)
bool | open (FatFile *dirFile, const char *path, uint8_t oflag)
int | peek ()

## Detailed Description

file input stream.

## Member Typedef Documentation

typedef unsigned int ios_base::fmtflags
| inherited

type for format flags

typedef unsigned char ios_base::iostate
| inherited

typedef for iostate bitmask

typedef int32_t ios_base::off_type
| inherited

type for relative seek offset

typedef uint8_t ios_base::openmode
| inherited

typedef for iostream open mode

typedef uint32_t ios_base::pos_type
| inherited

type for absolute seek position

typedef uint32_t ios_base::streamsize
| inherited

unsigned size that can represent maximum file size. (violates spec - should be signed)

## Member Enumeration Documentation

enum ios_base::seekdir
| inherited

enumerated type for the direction of relative seeks

Enumerator
beg | seek relative to the beginning of the stream
cur | seek relative to the current stream position
end | seek relative to the end of the stream

## Constructor & Destructor Documentation

ifstream::ifstream | ( | const char * | path,
|  | openmode | mode = `in`
| ) |  |
| inline explicit

Constructor with open

Parameters

  [in] | path | file to open
  [in] | mode | open mode

## Member Function Documentation

bool ios::bad | ( |  | ) | const
| inline inherited

Returns
  true if bad bit is set else false.

void ios::clear | ( | iostate | state = `goodbit` | ) |
| inline inherited

Clear iostate bits.

Parameters

  [in] | state | The flags you want to set after clearing all flags.

void ifstream::close | ( |  | ) |
| inline

Close a file and force cached data and directory information to be written to the storage device.

bool ios::eof | ( |  | ) | const
| inline inherited

Returns
  true if end of file has been reached else false.

Warning: An empty file returns false before the first read.

Moral: eof() is only useful in combination with fail(), to find out whether EOF was the cause for failure

bool ios::fail | ( |  | ) | const
| inline inherited

Returns
  true if any iostate bit other than eof are set else false.

char ios_base::fill | ( |  | ) |
| inline inherited

Returns
  fill character

char ios_base::fill | ( | char | c | ) |
| inline inherited

Set fill character

Parameters

  [in] | c | new fill character

Returns
  old fill character

fmtflags ios_base::flags | ( |  | ) | const
| inline inherited

Returns
  format flags

fmtflags ios_base::flags | ( | fmtflags | fl | ) |
| inline inherited

set format flags

Parameters

  [in] | fl | new flag

Returns
  old flags

streamsize istream::gcount | ( |  | ) | const
| inline inherited

Returns
  The number of characters extracted by the last unformatted input function.

int istream::get | ( |  | ) |
| inherited

Extract a character if one is available.

Returns
  The character or -1 if a failure occurs. A failure is indicated by the stream state.

istream & istream::get | ( | char & | ch | ) |
| inherited

Extract a character if one is available.

Parameters

  [out] | ch | location to receive the extracted character.

Returns
  always returns *this. A failure is indicated by the stream state.

istream & istream::get | ( | char * | str,
|  | streamsize | n,
|  | char | delim = `'\n'`
| ) |  |
| inherited

Extract characters.

Parameters

  [out] | str | Location to receive extracted characters.
  [in] | n | Size of str.
  [in] | delim | Delimiter

Characters are extracted until extraction fails, n is less than 1, n-1 characters are extracted, or the next character equals delim (delim is not extracted). If no characters are extracted failbit is set. If end-of-file occurs the eofbit is set.

Returns
  always returns *this. A failure is indicated by the stream state.

istream & istream::getline | ( | char * | str,
|  | streamsize | n,
|  | char | delim = `'\n'`
| ) |  |
| inherited

Extract characters

Parameters

  [out] | str | Location to receive extracted characters.
  [in] | n | Size of str.
  [in] | delim | Delimiter

Characters are extracted until extraction fails, the next character equals delim (delim is extracted), or n-1 characters are extracted.

The failbit is set if no characters are extracted or n-1 characters are extracted. If end-of-file occurs the eofbit is set.

Returns
  always returns *this. A failure is indicated by the stream state.

bool ios::good | ( |  | ) | const
| inline inherited

Returns
  True if no iostate flags are set else false.

istream & istream::ignore | ( | streamsize | n = `1`,
|  | int | delim = `-1`
| ) |  |
| inherited

Extract characters and discard them.

Parameters

  [in] | n | maximum number of characters to ignore.
  [in] | delim | Delimiter.

Characters are extracted until extraction fails, n characters are extracted, or the next input character equals delim (the delimiter is extracted). If end-of-file occurs the eofbit is set.

Failures are indicated by the state of the stream.

Returns
  *this

bool ifstream::is_open | ( |  | ) |
| inline

Returns
  True if stream is open else false.

void ifstream::open | ( | const char * | path,
|  | openmode | mode = `in`
| ) |  |
| inline

Open an ifstream

Parameters

  [in] | path | file to open
  [in] | mode | open mode

mode See fstream::open() for valid modes.

ios::operator const void * | ( |  | ) | const
| inline inherited

Returns
  null pointer if fail() is true.

bool ios::operator! | ( |  | ) | const
| inline inherited

Returns
  true if fail() else false.

istream& istream::operator>> | ( | istream &(*)(istream &str) | pf | ) |
| inline inherited

call manipulator

Parameters

  [in] | pf | function to call

Returns
  the stream

istream& istream::operator>> | ( | ios_base &(*)(ios_base &str) | pf | ) |
| inline inherited

call manipulator

Parameters

  [in] | pf | function to call

Returns
  the stream

istream& istream::operator>> | ( | ios &(*)(ios &str) | pf | ) |
| inline inherited

call manipulator

Parameters

  [in] | pf | function to call

Returns
  the stream

istream& istream::operator>> | ( | char * | str | ) |
| inline inherited

Extract a character string

Parameters

  [out] | str | location to store the string.

Returns
  Is always *this. Failure is indicated by the state of *this.

istream& istream::operator>> | ( | char & | ch | ) |
| inline inherited

Extract a character

Parameters

  [out] | ch | location to store the character.

Returns
  Is always *this. Failure is indicated by the state of *this.

istream& istream::operator>> | ( | signed char * | str | ) |
| inline inherited

Extract a character string

Parameters

  [out] | str | location to store the string.

Returns
  Is always *this. Failure is indicated by the state of *this.

istream& istream::operator>> | ( | signed char & | ch | ) |
| inline inherited

Extract a character

Parameters

  [out] | ch | location to store the character.

Returns
  Is always *this. Failure is indicated by the state of *this.

istream& istream::operator>> | ( | unsigned char * | str | ) |
| inline inherited

Extract a character string

Parameters

  [out] | str | location to store the string.

Returns
  Is always *this. Failure is indicated by the state of *this.

istream& istream::operator>> | ( | unsigned char & | ch | ) |
| inline inherited

Extract a character

Parameters

  [out] | ch | location to store the character.

Returns
  Is always *this. Failure is indicated by the state of *this.

istream& istream::operator>> | ( | bool & | arg | ) |
| inline inherited

Extract a value of type bool.

Parameters

  [out] | arg | location to store the value.

Returns
  Is always *this. Failure is indicated by the state of *this.

istream& istream::operator>> | ( | short & | arg | ) |
| inline inherited

Extract a value of type short.

Parameters

  [out] | arg | location to store the value.

Returns
  Is always *this. Failure is indicated by the state of *this.

istream& istream::operator>> | ( | unsigned short & | arg | ) |
| inline inherited

Extract a value of type unsigned short.

Parameters

  [out] | arg | location to store the value.

Returns
  Is always *this. Failure is indicated by the state of *this.

istream& istream::operator>> | ( | int & | arg | ) |
| inline inherited

Extract a value of type int.

Parameters

  [out] | arg | location to store the value.

Returns
  Is always *this. Failure is indicated by the state of *this.

istream& istream::operator>> | ( | unsigned int & | arg | ) |
| inline inherited

Extract a value of type unsigned int.

Parameters

  [out] | arg | location to store the value.

Returns
  Is always *this. Failure is indicated by the state of *this.

istream& istream::operator>> | ( | long & | arg | ) |
| inline inherited

Extract a value of type long.

Parameters

  [out] | arg | location to store the value.

Returns
  Is always *this. Failure is indicated by the state of *this.

istream& istream::operator>> | ( | unsigned long & | arg | ) |
| inline inherited

Extract a value of type unsigned long.

Parameters

  [out] | arg | location to store the value.

Returns
  Is always *this. Failure is indicated by the state of *this.

istream& istream::operator>> | ( | double & | arg | ) |
| inline inherited

Extract a value of type double.

Parameters

  [out] | arg | location to store the value.

Returns
  Is always *this. Failure is indicated by the state of *this.

istream& istream::operator>> | ( | float & | arg | ) |
| inline inherited

Extract a value of type float.

Parameters

  [out] | arg | location to store the value.

Returns
  Is always *this. Failure is indicated by the state of *this.

istream& istream::operator>> | ( | void *& | arg | ) |
| inline inherited

Extract a value of type void*.

Parameters

  [out] | arg | location to store the value.

Returns
  Is always *this. Failure is indicated by the state of *this.

int istream::peek | ( |  | ) |
| inherited

Return the next available character without consuming it.

Returns
  The character if the stream state is good else -1;

int ios_base::precision | ( |  | ) | const
| inline inherited

Returns
  precision

int ios_base::precision | ( | unsigned int | n | ) |
| inline inherited

set precision

Parameters

  [in] | n | new precision

Returns
  old precision

iostate ios::rdstate | ( |  | ) | const
| inline inherited

Returns
  The iostate flags for this file.

istream& istream::seekg | ( | pos_type | pos | ) |
| inline inherited

Set the stream position

Parameters

  [in] | pos | The absolute position in which to move the read pointer.

Returns
  Is always *this. Failure is indicated by the state of *this.

istream& istream::seekg | ( | off_type | off,
|  | seekdir | way
| ) |  |
| inline inherited

Set the stream position.

Parameters

  [in] | off | An offset to move the read pointer relative to way. off is a signed 32-bit int so the offset is limited to +- 2GB.
  [in] | way | One of ios::beg, ios::cur, or ios::end.

Returns
  Is always *this. Failure is indicated by the state of *this.

fmtflags ios_base::setf | ( | fmtflags | fl | ) |
| inline inherited

set format flags

Parameters

  [in] | fl | new flags to be or'ed in

Returns
  old flags

fmtflags ios_base::setf | ( | fmtflags | fl,
|  | fmtflags | mask
| ) |  |
| inline inherited

modify format flags

Parameters

  [in] | mask | flags to be removed
  [in] | fl | flags to be set after mask bits have been cleared

Returns
  old flags

void ios::setstate | ( | iostate | state | ) |
| inline inherited

Set iostate bits.

Parameters

  [in] | state | Bitts to set.

void istream::skipWhite | ( |  | ) |
| inherited

used to implement ws()

pos_type istream::tellg | ( |  | ) |
| inline inherited

Returns
  the stream position

void ios_base::unsetf | ( | fmtflags | fl | ) |
| inline inherited

clear format flags

Parameters

  [in] | fl | flags to be cleared

Returns
  old flags

unsigned ios_base::width | ( |  | ) |
| inline inherited

Returns
  width

unsigned ios_base::width | ( | unsigned | n | ) |
| inline inherited

set width

Parameters

  [in] | n | new width

Returns
  old width

## Member Data Documentation

const fmtflags ios_base::adjustfield = left | right | internal
| static inherited

mask for adjustfield

const openmode ios_base::app = 0X4
| static inherited

seek to end before each write

const openmode ios_base::ate = 0X8
| static inherited

open and seek to end immediately after opening

const iostate ios_base::badbit = 0X01
| static inherited

iostate bad bit for a nonrecoverable error.

const fmtflags ios_base::basefield = dec | hex | oct
| static inherited

mask for basefield

const openmode ios_base::binary = 0X10
| static inherited

perform input and output in binary mode (as opposed to text mode)

const fmtflags ios_base::boolalpha = 0x0100
| static inherited

use strings true/false for bool

const fmtflags ios_base::dec = 0x0008
| static inherited

base 10 flag

const iostate ios_base::eofbit = 0x02
| static inherited

iostate bit for end of file reached

const iostate ios_base::failbit = 0X04
| static inherited

iostate fail bit for nonfatal error

const iostate ios_base::goodbit = 0x00
| static inherited

iostate for no flags

const fmtflags ios_base::hex = 0x0010
| static inherited

base 16 flag

const openmode ios_base::in = 0X20
| static inherited

open for input

const fmtflags ios_base::internal = 0x0004
| static inherited

fill between sign/base prefix and number

const fmtflags ios_base::left = 0x0001
| static inherited

left adjust fields

const fmtflags ios_base::oct = 0x0020
| static inherited

base 8 flag

const openmode ios_base::out = 0X40
| static inherited

open for output

const fmtflags ios_base::right = 0x0002
| static inherited

right adjust fields

const fmtflags ios_base::showbase = 0x0200
| static inherited

use prefix 0X for hex and 0 for oct

const fmtflags ios_base::showpoint = 0x0400
| static inherited

always show '.' for floating numbers

const fmtflags ios_base::showpos = 0x0800
| static inherited

show + sign for nonnegative numbers

const fmtflags ios_base::skipws = 0x1000
| static inherited

skip initial white space

const openmode ios_base::trunc = 0X80
| static inherited

truncate an existing stream when opening

const fmtflags ios_base::uppercase = 0x4000
| static inherited

use uppercase letters in number representations

The documentation for this class was generated from the following file:

- Arduino/libraries/SdFat/src/FatLib/fstream.h