FatFile.h File Reference

FatFile class. More...

`#include <string.h>`
`#include <stddef.h>`
`#include <limits.h>`
`#include "FatLibConfig.h"`
`#include "FatApiConstants.h"`
`#include "FatStructs.h"`
`#include "FatVolume.h"`
Include dependency graph for FatFile.h:
This graph shows which files directly or indirectly include this file:

## Classes

class | FatFile
| Basic file class. More...
struct | FatPos_t
| Internal type for file position - do not use in user apps. More...
struct | fname_t
| Internal type for Short File Name - do not use in user apps. More...

## Macros

#define | isDirSeparator(c) ((c) == '/')
#define | pgm_read_byte(addr) (*(const unsigned char*)(addr))
#define | pgm_read_word(addr) (*(const uint16_t*)(addr))
#define | PROGMEM
#define | PSTR(x) (x)

## Variables

const uint8_t | FNAME_FLAG_LC_BASE = DIR_NT_LC_BASE
const uint8_t | FNAME_FLAG_LC_EXT = DIR_NT_LC_EXT
const uint8_t | FNAME_FLAG_LOST_CHARS = 0X01
const uint8_t | FNAME_FLAG_MIXED_CASE = 0X02
const uint8_t | FNAME_FLAG_NEED_LFN

## Detailed Description

FatFile class.

Copyright (c) 2011-2018 Bill Greiman This file is part of the SdFat library for SD memory cards.

MIT License

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

## Macro Definition Documentation

## isDirSeparator

#define isDirSeparator | ( |  | c | ) | ((c) == '/')

Expression for path name separator.

## pgm_read_byte

#define pgm_read_byte | ( |  | addr | ) | (*(const unsigned char*)(addr))

read 8-bits from flash for ARM

## pgm_read_word

#define pgm_read_word | ( |  | addr | ) | (*(const uint16_t*)(addr))

read 16-bits from flash for ARM

## PROGMEM

#define PROGMEM

store in flash for ARM

## PSTR

#define PSTR | ( |  | x | ) | (x)

store literal string in flash for ARM

## Variable Documentation

## FNAME_FLAG_LC_BASE

const uint8_t FNAME_FLAG_LC_BASE = DIR_NT_LC_BASE

Filename base-name is all lower case

## FNAME_FLAG_LC_EXT

const uint8_t FNAME_FLAG_LC_EXT = DIR_NT_LC_EXT

Filename extension is all lower case.

## FNAME_FLAG_LOST_CHARS

const uint8_t FNAME_FLAG_LOST_CHARS = 0X01

Derived from a LFN with loss or conversion of characters.

## FNAME_FLAG_MIXED_CASE

const uint8_t FNAME_FLAG_MIXED_CASE = 0X02

Base-name or extension has mixed case.

## FNAME_FLAG_NEED_LFN

const uint8_t FNAME_FLAG_NEED_LFN

Initial value:
=
FNAME_FLAG_LOST_CHARS | FNAME_FLAG_MIXED_CASE
FNAME_FLAG_MIXED_CASE
const uint8_t FNAME_FLAG_MIXED_CASE
Definition: FatFile.h:97
FNAME_FLAG_LOST_CHARS
const uint8_t FNAME_FLAG_LOST_CHARS
Definition: FatFile.h:95

LFN entries are required for file name.