| SdFat
    | 
SD file input/output stream. More...
#include <SdStream.h>


| 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) | 
| ostream & | flush () | 
| fstream () | |
| fstream (const char *path, openmode mode=in|out) | |
| streamsize | gcount () const | 
| int | get () | 
| istream & | get (char &ch) | 
| istream & | get (char *str, streamsize n, char delim= '\n') | 
| istream & | getline (char *str, streamsize count, char delim= '\n') | 
| bool | good () const | 
| istream & | ignore (streamsize n=1, int delim=-1) | 
| bool | is_open () | 
| void | open (const char *path, openmode mode=in|out) | 
| operator const void * () const | |
| bool | operator! () const | 
| ostream & | operator<< (ostream &(*pf)(ostream &str)) | 
| ostream & | operator<< (ios_base &(*pf)(ios_base &str)) | 
| ostream & | operator<< (bool arg) | 
| ostream & | operator<< (const char *arg) | 
| ostream & | operator<< (const signed char *arg) | 
| ostream & | operator<< (const unsigned char *arg) | 
| ostream & | operator<< (char arg) | 
| ostream & | operator<< (signed char arg) | 
| ostream & | operator<< (unsigned char arg) | 
| ostream & | operator<< (double arg) | 
| ostream & | operator<< (float arg) | 
| ostream & | operator<< (short arg) | 
| ostream & | operator<< (unsigned short arg) | 
| ostream & | operator<< (int arg) | 
| ostream & | operator<< (unsigned int arg) | 
| ostream & | operator<< (long arg) | 
| ostream & | operator<< (unsigned long arg) | 
| ostream & | operator<< (const void *arg) | 
| ostream & | operator<< (pgm arg) | 
| ostream & | operator<< (const __FlashStringHelper *arg) | 
| 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) | 
| ostream & | put (char ch) | 
| iostate | rdstate () const | 
| istream & | seekg (pos_type pos) | 
| istream & | seekg (off_type off, seekdir way) | 
| ostream & | seekp (pos_type pos) | 
| ostream & | seekp (off_type off, seekdir way) | 
| fmtflags | setf (fmtflags fl) | 
| fmtflags | setf (fmtflags fl, fmtflags mask) | 
| void | setstate (iostate state) | 
| void | skipWhite () | 
| pos_type | tellg () | 
| pos_type | tellp () | 
| 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 | 
| Protected Member Functions | |
| uint8_t | flagsToBase () | 
| Private Member Functions | |
| uint32_t | available () | 
| void | clearWriteError () | 
| bool | contiguousRange (uint32_t *bgnBlock, uint32_t *endBlock) | 
| bool | createContiguous (SdBaseFile *dirFile, const char *path, uint32_t size) | 
| uint32_t | curCluster () const | 
| uint32_t | curPosition () const | 
| bool | dirEntry (dir_t *dir) | 
| bool | exists (const char *name) | 
| int16_t | fgets (char *str, int16_t num, char *delim=0) | 
| uint32_t | fileSize () const | 
| uint32_t | firstCluster () const | 
| bool | getFilename (char *name) | 
| void | getpos (FatPos_t *pos) | 
| bool | getWriteError () | 
| bool | isDir () const | 
| bool | isFile () const | 
| bool | isOpen () const | 
| bool | isRoot () const | 
| bool | isSubDir () const | 
| void | ls (Print *pr, uint8_t flags=0, uint8_t indent=0) | 
| void | ls (uint8_t flags=0) | 
| bool | mkdir (SdBaseFile *dir, const char *path, bool pFlag=true) | 
| bool | open (SdBaseFile *dirFile, uint16_t index, uint8_t oflag) | 
| bool | open (SdBaseFile *dirFile, const char *path, uint8_t oflag) | 
| bool | openNext (SdBaseFile *dirFile, uint8_t oflag) | 
| bool | openRoot (SdVolume *vol) | 
| int | peek () | 
| bool | printCreateDateTime (Print *pr) | 
| int | printField (int16_t value, char term) | 
| int | printField (uint16_t value, char term) | 
| int | printField (int32_t value, char term) | 
| int | printField (uint32_t value, char term) | 
| size_t | printFileSize (Print *pr) | 
| bool | printModifyDateTime (Print *pr) | 
| size_t | printName () | 
| size_t | printName (Print *pr) | 
| int16_t | read () | 
| int | read (void *buf, size_t nbyte) | 
| int8_t | readDir (dir_t *dir) | 
| bool | remove () | 
| bool | rename (SdBaseFile *dirFile, const char *newPath) | 
| void | rewind () | 
| bool | rmdir () | 
| bool | rmRfStar () | 
| bool | seekCur (int32_t offset) | 
| bool | seekEnd (int32_t offset=0) | 
| bool | seekSet (uint32_t pos) | 
| void | setpos (FatPos_t *pos) | 
| bool | sync () | 
| bool | timestamp (SdBaseFile *file) | 
| bool | timestamp (uint8_t flag, uint16_t year, uint8_t month, uint8_t day, uint8_t hour, uint8_t minute, uint8_t second) | 
| bool | truncate (uint32_t size) | 
| uint8_t | type () const | 
| SdVolume * | volume () const | 
| int | write (const void *buf, size_t nbyte) | 
| Static Private Member Functions | |
| static SdBaseFile * | cwd () | 
| static void | dateTimeCallback (void(*dateTime)(uint16_t *date, uint16_t *time)) | 
| static void | dateTimeCallbackCancel () | 
| static void | dirName (const dir_t &dir, char *name) | 
| static void | printFatDate (uint16_t fatDate) | 
| static void | printFatDate (Print *pr, uint16_t fatDate) | 
| static void | printFatTime (uint16_t fatTime) | 
| static void | printFatTime (Print *pr, uint16_t fatTime) | 
| static bool | remove (SdBaseFile *dirFile, const char *path) | 
| Private Attributes | |
| bool | writeError | 
SD file input/output stream.
| 
 | inherited | 
type for format flags
| 
 | inherited | 
typedef for iostate bitmask
| 
 | inherited | 
type for relative seek offset
| 
 | inherited | 
typedef for iostream open mode
| 
 | inherited | 
type for absolute seek position
| 
 | inherited | 
unsigned size that can represent maximum file size. (violates spec - should be signed)
| 
 | inherited | 
| 
 | inline | 
Constructor with open
| [in] | path | path to open | 
| [in] | mode | open mode | 
| 
 | inlineinherited | 
Clear state and writeError
| [in] | state | new state for stream | 
| 
 | inline | 
Close a file and force cached data and directory information to be written to the storage device.
| 
 | inlineinherited | 
| 
 | inlineinherited | 
| 
 | inlineinherited | 
| 
 | inlineinherited | 
Set fill character
| [in] | c | new fill character | 
| 
 | inlineinherited | 
set format flags
| [in] | fl | new flag | 
| 
 | inlineprotectedinherited | 
| 
 | inlineinherited | 
Flushes the buffer associated with this stream. The flush function calls the sync function of the associated file.
| 
 | inlineinherited | 
| 
 | inherited | 
Extract a character if one is available.
| 
 | inherited | 
Extract a character if one is available.
| [out] | c | location to receive the extracted character. | 
| 
 | inherited | 
Extract characters.
| [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.
| 
 | inherited | 
Extract characters
| [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.
| 
 | inlineinherited | 
| 
 | inherited | 
Extract characters and discard them.
| [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.
| 
 | inline | 
Open a fstream
| [in] | path | file to open | 
| [in] | mode | open mode | 
Valid open modes are (at end, ios::ate, and/or ios::binary may be added):
ios::in - Open file for reading.
ios::out or ios::out | ios::trunc - Truncate to 0 length, if existent, or create a file for writing only.
ios::app or ios::out | ios::app - Append; open or create file for writing at end-of-file.
ios::in | ios::out - Open file for update (reading and writing).
ios::in | ios::out | ios::trunc - Truncate to zero length, if existent, or create file for update.
ios::in | ios::app or ios::in | ios::out | ios::app - Append; open or create text file for update, writing at end of file.
| 
 | inlineinherited | 
| 
 | inlineinherited | 
call manipulator
| [in] | pf | function to call | 
call manipulator
| [in] | pf | function to call | 
| 
 | inlineinherited | 
Output bool
| [in] | arg | value to output | 
| 
 | inlineinherited | 
Output string
| [in] | arg | string to output | 
| 
 | inlineinherited | 
Output string
| [in] | arg | string to output | 
| 
 | inlineinherited | 
Output string
| [in] | arg | string to output | 
| 
 | inlineinherited | 
Output character
| [in] | arg | character to output | 
| 
 | inlineinherited | 
Output character
| [in] | arg | character to output | 
| 
 | inlineinherited | 
Output character
| [in] | arg | character to output | 
| 
 | inlineinherited | 
Output double
| [in] | arg | value to output | 
| 
 | inlineinherited | 
Output float
| [in] | arg | value to output | 
| 
 | inlineinherited | 
Output signed short
| [in] | arg | value to output | 
| 
 | inlineinherited | 
Output unsigned short
| [in] | arg | value to output | 
| 
 | inlineinherited | 
Output signed int
| [in] | arg | value to output | 
| 
 | inlineinherited | 
Output unsigned int
| [in] | arg | value to output | 
| 
 | inlineinherited | 
Output signed long
| [in] | arg | value to output | 
| 
 | inlineinherited | 
Output unsigned long
| [in] | arg | value to output | 
| 
 | inlineinherited | 
Output pointer
| [in] | arg | value to output | 
Output a string from flash using the pstr() macro
| [in] | arg | pgm struct pointing to string | 
| 
 | inlineinherited | 
Output a string from flash using the Arduino F() macro.
| [in] | arg | pointing to flash string | 
call manipulator
| [in] | pf | function to call | 
call manipulator
| [in] | pf | function to call | 
call manipulator
| [in] | pf | function to call | 
| 
 | inlineinherited | 
Extract a character string
| [out] | str | location to store the string. | 
| 
 | inlineinherited | 
Extract a character
| [out] | ch | location to store the character. | 
| 
 | inlineinherited | 
Extract a character string
| [out] | str | location to store the string. | 
| 
 | inlineinherited | 
Extract a character
| [out] | ch | location to store the character. | 
| 
 | inlineinherited | 
Extract a character string
| [out] | str | location to store the string. | 
| 
 | inlineinherited | 
Extract a character
| [out] | ch | location to store the character. | 
| 
 | inlineinherited | 
Extract a value of type bool.
| [out] | arg | location to store the value. | 
| 
 | inlineinherited | 
Extract a value of type short.
| [out] | arg | location to store the value. | 
| 
 | inlineinherited | 
Extract a value of type unsigned short.
| [out] | arg | location to store the value. | 
| 
 | inlineinherited | 
Extract a value of type int.
| [out] | arg | location to store the value. | 
| 
 | inlineinherited | 
Extract a value of type unsigned int.
| [out] | arg | location to store the value. | 
| 
 | inlineinherited | 
Extract a value of type long.
| [out] | arg | location to store the value. | 
| 
 | inlineinherited | 
Extract a value of type unsigned long.
| [out] | arg | location to store the value. | 
| 
 | inlineinherited | 
Extract a value of type double.
| [out] | arg | location to store the value. | 
| 
 | inlineinherited | 
Extract a value of type float.
| [out] | arg | location to store the value. | 
| 
 | inlineinherited | 
Extract a value of type void*.
| [out] | arg | location to store the value. | 
| 
 | inherited | 
Return the next available character without consuming it.
| 
 | inlineinherited | 
| 
 | inlineinherited | 
set precision
| [in] | n | new precision | 
| 
 | inlineinherited | 
Puts a character in a stream.
The unformatted output function inserts the element ch. It returns *this.
| [in] | ch | The character | 
| 
 | inlineinherited | 
Set the stream position
| [in] | pos | The absolute position in which to move the read pointer. | 
Set the stream position
| [in] | pos | The absolute position in which to move the write pointer. | 
set format flags
| [in] | fl | new flags to be or'ed in | 
modify format flags
| [in] | mask | flags to be removed | 
| [in] | fl | flags to be set after mask bits have been cleared | 
| 
 | inlineinherited | 
Set iostate bits.
| [in] | state | Bitts to set. | 
| 
 | inherited | 
used to implement ws()
| 
 | inlineinherited | 
| 
 | inlineinherited | 
| 
 | inlineinherited | 
clear format flags
| [in] | fl | flags to be cleared | 
| 
 | inlineinherited | 
| 
 | inlineinherited | 
set width
| [in] | n | new width | 
| 
 | staticinherited | 
seek to end before each write
| 
 | staticinherited | 
open and seek to end immediately after opening
| 
 | staticinherited | 
iostate bad bit for a nonrecoverable error.
| 
 | staticinherited | 
perform input and output in binary mode (as opposed to text mode)
| 
 | staticinherited | 
use strings true/false for bool
| 
 | staticinherited | 
base 10 flag
| 
 | staticinherited | 
iostate bit for end of file reached
| 
 | staticinherited | 
iostate fail bit for nonfatal error
| 
 | staticinherited | 
iostate for no flags
| 
 | staticinherited | 
base 16 flag
| 
 | staticinherited | 
open for input
| 
 | staticinherited | 
fill between sign/base prefix and number
| 
 | staticinherited | 
left adjust fields
| 
 | staticinherited | 
base 8 flag
| 
 | staticinherited | 
open for output
| 
 | staticinherited | 
right adjust fields
| 
 | staticinherited | 
use prefix 0X for hex and 0 for oct
| 
 | staticinherited | 
always show '.' for floating numbers
| 
 | staticinherited | 
show + sign for nonnegative numbers
| 
 | staticinherited | 
skip initial white space
| 
 | staticinherited | 
truncate an existing stream when opening
| 
 | staticinherited | 
use uppercase letters in number representations
 1.8.6
 1.8.6