Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

3071 line
140KB

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
  5. <meta http-equiv="X-UA-Compatible" content="IE=9"/>
  6. <meta name="generator" content="Doxygen 1.8.14"/>
  7. <meta name="viewport" content="width=device-width, initial-scale=1"/>
  8. <title>SdFat: FatFile Class Reference</title>
  9. <link href="tabs.css" rel="stylesheet" type="text/css"/>
  10. <script type="text/javascript" src="jquery.js"></script>
  11. <script type="text/javascript" src="dynsections.js"></script>
  12. <link href="search/search.css" rel="stylesheet" type="text/css"/>
  13. <script type="text/javascript" src="search/searchdata.js"></script>
  14. <script type="text/javascript" src="search/search.js"></script>
  15. <link href="doxygen.css" rel="stylesheet" type="text/css" />
  16. </head>
  17. <body>
  18. <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
  19. <div id="titlearea">
  20. <table cellspacing="0" cellpadding="0">
  21. <tbody>
  22. <tr style="height: 56px;">
  23. <td id="projectalign" style="padding-left: 0.5em;">
  24. <div id="projectname">SdFat
  25. </div>
  26. </td>
  27. </tr>
  28. </tbody>
  29. </table>
  30. </div>
  31. <!-- end header part -->
  32. <!-- Generated by Doxygen 1.8.14 -->
  33. <script type="text/javascript">
  34. /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
  35. var searchBox = new SearchBox("searchBox", "search",false,'Search');
  36. /* @license-end */
  37. </script>
  38. <script type="text/javascript" src="menudata.js"></script>
  39. <script type="text/javascript" src="menu.js"></script>
  40. <script type="text/javascript">
  41. /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
  42. $(function() {
  43. initMenu('',true,false,'search.php','Search');
  44. $(document).ready(function() { init_search(); });
  45. });
  46. /* @license-end */</script>
  47. <div id="main-nav"></div>
  48. <!-- window showing the filter options -->
  49. <div id="MSearchSelectWindow"
  50. onmouseover="return searchBox.OnSearchSelectShow()"
  51. onmouseout="return searchBox.OnSearchSelectHide()"
  52. onkeydown="return searchBox.OnSearchSelectKey(event)">
  53. </div>
  54. <!-- iframe showing the search results (closed by default) -->
  55. <div id="MSearchResultsWindow">
  56. <iframe src="javascript:void(0)" frameborder="0"
  57. name="MSearchResults" id="MSearchResults">
  58. </iframe>
  59. </div>
  60. </div><!-- top -->
  61. <div class="header">
  62. <div class="summary">
  63. <a href="#pub-methods">Public Member Functions</a> &#124;
  64. <a href="#pub-static-methods">Static Public Member Functions</a> &#124;
  65. <a href="#friends">Friends</a> &#124;
  66. <a href="class_fat_file-members.html">List of all members</a> </div>
  67. <div class="headertitle">
  68. <div class="title">FatFile Class Reference</div> </div>
  69. </div><!--header-->
  70. <div class="contents">
  71. <p>Basic file class.
  72. <a href="class_fat_file.html#details">More...</a></p>
  73. <p><code>#include &lt;FatFile.h&gt;</code></p>
  74. <div class="dynheader">
  75. Inheritance diagram for FatFile:</div>
  76. <div class="dyncontent">
  77. <div class="center"><img src="class_fat_file__inherit__graph.png" border="0" usemap="#_fat_file_inherit__map" alt="Inheritance graph"/></div>
  78. <map name="_fat_file_inherit__map" id="_fat_file_inherit__map">
  79. <area shape="rect" id="node2" href="class_print_file.html" title="PrintFile\&lt; SdBaseFile \&gt;" alt="" coords="5,87,167,114"/>
  80. <area shape="rect" id="node4" href="class_stdio_stream.html" title="StdioStream implements a minimal stdio stream. " alt="" coords="191,87,285,114"/>
  81. <area shape="rect" id="node5" href="class_stream_base_class.html" title="base type for FAT and exFAT streams " alt="" coords="309,87,436,114"/>
  82. <area shape="rect" id="node9" href="class_stream_file.html" title="StreamFile\&lt; FatFile,\l uint32_t \&gt;" alt="" coords="467,80,609,121"/>
  83. <area shape="rect" id="node3" href="class_sd_file.html" title="FAT16/FAT32 file with Print. " alt="" coords="57,169,115,196"/>
  84. <area shape="rect" id="node6" href="classfstream.html" title="file input/output stream. " alt="" coords="243,169,308,196"/>
  85. <area shape="rect" id="node7" href="classifstream.html" title="file input stream. " alt="" coords="332,169,400,196"/>
  86. <area shape="rect" id="node8" href="classofstream.html" title="file output stream. " alt="" coords="425,169,497,196"/>
  87. <area shape="rect" id="node10" href="class_file32.html" title="FAT16/FAT32 file with Arduino Stream. " alt="" coords="521,169,579,196"/>
  88. </map>
  89. <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
  90. <table class="memberdecls">
  91. <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
  92. Public Member Functions</h2></td></tr>
  93. <tr class="memitem:a4baea142c9cd53293a93ef3d6a67aa16"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a4baea142c9cd53293a93ef3d6a67aa16">available</a> ()</td></tr>
  94. <tr class="separator:a4baea142c9cd53293a93ef3d6a67aa16"><td class="memSeparator" colspan="2">&#160;</td></tr>
  95. <tr class="memitem:a651ffa37e7e586fc3c2de8cbbd500ea6"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a651ffa37e7e586fc3c2de8cbbd500ea6">available32</a> ()</td></tr>
  96. <tr class="separator:a651ffa37e7e586fc3c2de8cbbd500ea6"><td class="memSeparator" colspan="2">&#160;</td></tr>
  97. <tr class="memitem:a052e2c15a39b322a5307b693b8835b22"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a052e2c15a39b322a5307b693b8835b22">clearError</a> ()</td></tr>
  98. <tr class="separator:a052e2c15a39b322a5307b693b8835b22"><td class="memSeparator" colspan="2">&#160;</td></tr>
  99. <tr class="memitem:aeca2a2eff91e6aa55fe1b0e3860c9a05"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#aeca2a2eff91e6aa55fe1b0e3860c9a05">clearWriteError</a> ()</td></tr>
  100. <tr class="separator:aeca2a2eff91e6aa55fe1b0e3860c9a05"><td class="memSeparator" colspan="2">&#160;</td></tr>
  101. <tr class="memitem:afd16af325e0642e4bff6430b7d8bb18b"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#afd16af325e0642e4bff6430b7d8bb18b">close</a> ()</td></tr>
  102. <tr class="separator:afd16af325e0642e4bff6430b7d8bb18b"><td class="memSeparator" colspan="2">&#160;</td></tr>
  103. <tr class="memitem:a12b3c5a763416ca62c70e3db74033cd0"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a12b3c5a763416ca62c70e3db74033cd0">contiguousRange</a> (uint32_t *bgnSector, uint32_t *endSector)</td></tr>
  104. <tr class="separator:a12b3c5a763416ca62c70e3db74033cd0"><td class="memSeparator" colspan="2">&#160;</td></tr>
  105. <tr class="memitem:a0afc2a1cffa238d1cb2049bfa2d8d199"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a0afc2a1cffa238d1cb2049bfa2d8d199">createContiguous</a> (<a class="el" href="class_fat_file.html">FatFile</a> *dirFile, const char *path, uint32_t size)</td></tr>
  106. <tr class="separator:a0afc2a1cffa238d1cb2049bfa2d8d199"><td class="memSeparator" colspan="2">&#160;</td></tr>
  107. <tr class="memitem:a0853fbd44aee2798d14d8e3aed78f8bf"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a0853fbd44aee2798d14d8e3aed78f8bf">createContiguous</a> (const char *path, uint32_t size)</td></tr>
  108. <tr class="separator:a0853fbd44aee2798d14d8e3aed78f8bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
  109. <tr class="memitem:a526f3dd56ce205690e45ffc86ef6f891"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a526f3dd56ce205690e45ffc86ef6f891">curCluster</a> () const</td></tr>
  110. <tr class="separator:a526f3dd56ce205690e45ffc86ef6f891"><td class="memSeparator" colspan="2">&#160;</td></tr>
  111. <tr class="memitem:a97e0620949f97e9b9c91ed1094d728aa"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a97e0620949f97e9b9c91ed1094d728aa">curPosition</a> () const</td></tr>
  112. <tr class="separator:a97e0620949f97e9b9c91ed1094d728aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
  113. <tr class="memitem:a2f4e9ab3056125b07f15d14ca26d5346"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a2f4e9ab3056125b07f15d14ca26d5346">dirEntry</a> (DirFat_t *dir)</td></tr>
  114. <tr class="separator:a2f4e9ab3056125b07f15d14ca26d5346"><td class="memSeparator" colspan="2">&#160;</td></tr>
  115. <tr class="memitem:ae5ec24d4a94d3780384d3f2b731c7eb9"><td class="memItemLeft" align="right" valign="top">uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#ae5ec24d4a94d3780384d3f2b731c7eb9">dirIndex</a> ()</td></tr>
  116. <tr class="separator:ae5ec24d4a94d3780384d3f2b731c7eb9"><td class="memSeparator" colspan="2">&#160;</td></tr>
  117. <tr class="memitem:ae2ed15f05c9ccbce355e7a8d3ce8382d"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#ae2ed15f05c9ccbce355e7a8d3ce8382d">dirSize</a> ()</td></tr>
  118. <tr class="separator:ae2ed15f05c9ccbce355e7a8d3ce8382d"><td class="memSeparator" colspan="2">&#160;</td></tr>
  119. <tr class="memitem:a4f01d27954ae49aeb6888ac7302f55d9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a4f01d27954ae49aeb6888ac7302f55d9">dmpFile</a> (<a class="el" href="_sys_call_8h.html#ac62f6449331cfe1a71f29be30efe7890">print_t</a> *pr, uint32_t pos, size_t n)</td></tr>
  120. <tr class="separator:a4f01d27954ae49aeb6888ac7302f55d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
  121. <tr class="memitem:a50242f98dea0d4488ce4039a279f2a57"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a50242f98dea0d4488ce4039a279f2a57">exists</a> (const char *path)</td></tr>
  122. <tr class="separator:a50242f98dea0d4488ce4039a279f2a57"><td class="memSeparator" colspan="2">&#160;</td></tr>
  123. <tr class="memitem:a7b591c9b92165fa8e4eae8c30c30e533"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a7b591c9b92165fa8e4eae8c30c30e533">FatFile</a> ()</td></tr>
  124. <tr class="separator:a7b591c9b92165fa8e4eae8c30c30e533"><td class="memSeparator" colspan="2">&#160;</td></tr>
  125. <tr class="memitem:a38f9a296138648d6135cbbbf41ef6b92"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a38f9a296138648d6135cbbbf41ef6b92">FatFile</a> (const char *path, oflag_t oflag)</td></tr>
  126. <tr class="separator:a38f9a296138648d6135cbbbf41ef6b92"><td class="memSeparator" colspan="2">&#160;</td></tr>
  127. <tr class="memitem:a33e0b0a8a342047f29ab8e8aae9cae14"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a33e0b0a8a342047f29ab8e8aae9cae14">fgetpos</a> (fspos_t *pos)</td></tr>
  128. <tr class="separator:a33e0b0a8a342047f29ab8e8aae9cae14"><td class="memSeparator" colspan="2">&#160;</td></tr>
  129. <tr class="memitem:a9e05a51767f7c8f70c6f337eecbdca03"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a9e05a51767f7c8f70c6f337eecbdca03">fgets</a> (char *str, int num, char *delim=<a class="el" href="_stdio_stream_8h.html#a070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>)</td></tr>
  130. <tr class="separator:a9e05a51767f7c8f70c6f337eecbdca03"><td class="memSeparator" colspan="2">&#160;</td></tr>
  131. <tr class="memitem:a874940574b9c99e763526465adf8dc28"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a874940574b9c99e763526465adf8dc28">fileSize</a> () const</td></tr>
  132. <tr class="separator:a874940574b9c99e763526465adf8dc28"><td class="memSeparator" colspan="2">&#160;</td></tr>
  133. <tr class="memitem:a5ac8a604863d18840f4a93c5c788b7c8"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a5ac8a604863d18840f4a93c5c788b7c8">firstBlock</a> () const</td></tr>
  134. <tr class="separator:a5ac8a604863d18840f4a93c5c788b7c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
  135. <tr class="memitem:af3108df387f30ca3d367dd390a04daaa"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#af3108df387f30ca3d367dd390a04daaa">firstSector</a> () const</td></tr>
  136. <tr class="separator:af3108df387f30ca3d367dd390a04daaa"><td class="memSeparator" colspan="2">&#160;</td></tr>
  137. <tr class="memitem:a166b5ff04754cc925f2aee71bf92f800"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a166b5ff04754cc925f2aee71bf92f800">flush</a> ()</td></tr>
  138. <tr class="separator:a166b5ff04754cc925f2aee71bf92f800"><td class="memSeparator" colspan="2">&#160;</td></tr>
  139. <tr class="memitem:ac042c43d41ecfff4e101b88f3f82086e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#ac042c43d41ecfff4e101b88f3f82086e">fsetpos</a> (const fspos_t *pos)</td></tr>
  140. <tr class="separator:ac042c43d41ecfff4e101b88f3f82086e"><td class="memSeparator" colspan="2">&#160;</td></tr>
  141. <tr class="memitem:ad0dbbd083180f44c7a3ce7124d4ce19c"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#ad0dbbd083180f44c7a3ce7124d4ce19c">getError</a> ()</td></tr>
  142. <tr class="separator:ad0dbbd083180f44c7a3ce7124d4ce19c"><td class="memSeparator" colspan="2">&#160;</td></tr>
  143. <tr class="memitem:aafa565e286440aab612cdb430fc01da5"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#aafa565e286440aab612cdb430fc01da5">getName</a> (char *name, size_t size)</td></tr>
  144. <tr class="separator:aafa565e286440aab612cdb430fc01da5"><td class="memSeparator" colspan="2">&#160;</td></tr>
  145. <tr class="memitem:aba30e92a66f8e0d2f815c85662772a58"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#aba30e92a66f8e0d2f815c85662772a58">getSFN</a> (char *name)</td></tr>
  146. <tr class="separator:aba30e92a66f8e0d2f815c85662772a58"><td class="memSeparator" colspan="2">&#160;</td></tr>
  147. <tr class="memitem:a8062c0d3a118e8d77d0310418703d5f5"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a8062c0d3a118e8d77d0310418703d5f5">getWriteError</a> ()</td></tr>
  148. <tr class="separator:a8062c0d3a118e8d77d0310418703d5f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
  149. <tr class="memitem:a16478eafdb731e867fb627d19091c3ce"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a16478eafdb731e867fb627d19091c3ce">isContiguous</a> () const</td></tr>
  150. <tr class="separator:a16478eafdb731e867fb627d19091c3ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
  151. <tr class="memitem:a933360b20b496421b2bd9ee7a95563a6"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a933360b20b496421b2bd9ee7a95563a6">isDir</a> () const</td></tr>
  152. <tr class="separator:a933360b20b496421b2bd9ee7a95563a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
  153. <tr class="memitem:acc5a87da1a5c8cb9758bfeaa7ae47b57"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#acc5a87da1a5c8cb9758bfeaa7ae47b57">isFile</a> () const</td></tr>
  154. <tr class="separator:acc5a87da1a5c8cb9758bfeaa7ae47b57"><td class="memSeparator" colspan="2">&#160;</td></tr>
  155. <tr class="memitem:ae216b4a2bc44a9cfb88478fa051a1fd8"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#ae216b4a2bc44a9cfb88478fa051a1fd8">isHidden</a> () const</td></tr>
  156. <tr class="separator:ae216b4a2bc44a9cfb88478fa051a1fd8"><td class="memSeparator" colspan="2">&#160;</td></tr>
  157. <tr class="memitem:af8f456ab790e818bfdd225cf6ffd40f3"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#af8f456ab790e818bfdd225cf6ffd40f3">isLFN</a> () const</td></tr>
  158. <tr class="separator:af8f456ab790e818bfdd225cf6ffd40f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
  159. <tr class="memitem:a8b8a2850c086d3ce79bee64a23fbf7a6"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a8b8a2850c086d3ce79bee64a23fbf7a6">isOpen</a> () const</td></tr>
  160. <tr class="separator:a8b8a2850c086d3ce79bee64a23fbf7a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
  161. <tr class="memitem:ae60b4cedb69c88ac641813d5edfa6b4a"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#ae60b4cedb69c88ac641813d5edfa6b4a">isReadable</a> () const</td></tr>
  162. <tr class="separator:ae60b4cedb69c88ac641813d5edfa6b4a"><td class="memSeparator" colspan="2">&#160;</td></tr>
  163. <tr class="memitem:abaf639ec8f86f34aeb7e6b3615526f0b"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#abaf639ec8f86f34aeb7e6b3615526f0b">isReadOnly</a> () const</td></tr>
  164. <tr class="separator:abaf639ec8f86f34aeb7e6b3615526f0b"><td class="memSeparator" colspan="2">&#160;</td></tr>
  165. <tr class="memitem:a03421a0c28649332f55e6ca06d3aeedb"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a03421a0c28649332f55e6ca06d3aeedb">isRoot</a> () const</td></tr>
  166. <tr class="separator:a03421a0c28649332f55e6ca06d3aeedb"><td class="memSeparator" colspan="2">&#160;</td></tr>
  167. <tr class="memitem:a8fda8004720ec4cc55710869dbb52e35"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a8fda8004720ec4cc55710869dbb52e35">isRoot32</a> () const</td></tr>
  168. <tr class="separator:a8fda8004720ec4cc55710869dbb52e35"><td class="memSeparator" colspan="2">&#160;</td></tr>
  169. <tr class="memitem:a0cc65089f7ce6c1ff92edbf0bff59dee"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a0cc65089f7ce6c1ff92edbf0bff59dee">isRootFixed</a> () const</td></tr>
  170. <tr class="separator:a0cc65089f7ce6c1ff92edbf0bff59dee"><td class="memSeparator" colspan="2">&#160;</td></tr>
  171. <tr class="memitem:abfd02c5d26f7d4f8739a8610116a6660"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#abfd02c5d26f7d4f8739a8610116a6660">isSubDir</a> () const</td></tr>
  172. <tr class="separator:abfd02c5d26f7d4f8739a8610116a6660"><td class="memSeparator" colspan="2">&#160;</td></tr>
  173. <tr class="memitem:a48087bdeb6b94fc27e0f74c3d90af5a9"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a48087bdeb6b94fc27e0f74c3d90af5a9">isSystem</a> () const</td></tr>
  174. <tr class="separator:a48087bdeb6b94fc27e0f74c3d90af5a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
  175. <tr class="memitem:aa484d5b2b147c5f3fe0e26b6eaf11ffc"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#aa484d5b2b147c5f3fe0e26b6eaf11ffc">isWritable</a> () const</td></tr>
  176. <tr class="separator:aa484d5b2b147c5f3fe0e26b6eaf11ffc"><td class="memSeparator" colspan="2">&#160;</td></tr>
  177. <tr class="memitem:a60ab9d16bcc778150a364c26de467de1"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a60ab9d16bcc778150a364c26de467de1">ls</a> (<a class="el" href="_sys_call_8h.html#ac62f6449331cfe1a71f29be30efe7890">print_t</a> *pr, uint8_t flags=0, uint8_t indent=0)</td></tr>
  178. <tr class="separator:a60ab9d16bcc778150a364c26de467de1"><td class="memSeparator" colspan="2">&#160;</td></tr>
  179. <tr class="memitem:a6a11f3307da6232b5f2d11812832d93a"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a6a11f3307da6232b5f2d11812832d93a">ls</a> (uint8_t flags=0)</td></tr>
  180. <tr class="separator:a6a11f3307da6232b5f2d11812832d93a"><td class="memSeparator" colspan="2">&#160;</td></tr>
  181. <tr class="memitem:abab5b9f72cc796388dd4eed01d13d90d"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#abab5b9f72cc796388dd4eed01d13d90d">mkdir</a> (<a class="el" href="class_fat_file.html">FatFile</a> *dir, const char *path, bool pFlag=true)</td></tr>
  182. <tr class="separator:abab5b9f72cc796388dd4eed01d13d90d"><td class="memSeparator" colspan="2">&#160;</td></tr>
  183. <tr class="memitem:af49a42dc64cd954debb271eae5639059"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#af49a42dc64cd954debb271eae5639059">open</a> (<a class="el" href="class_fat_volume.html">FatVolume</a> *vol, const char *path, oflag_t oflag)</td></tr>
  184. <tr class="separator:af49a42dc64cd954debb271eae5639059"><td class="memSeparator" colspan="2">&#160;</td></tr>
  185. <tr class="memitem:ab44920bb9cd5414b8e69c9dc4343394a"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#ab44920bb9cd5414b8e69c9dc4343394a">open</a> (<a class="el" href="class_fat_file.html">FatFile</a> *dirFile, uint16_t index, oflag_t oflag)</td></tr>
  186. <tr class="separator:ab44920bb9cd5414b8e69c9dc4343394a"><td class="memSeparator" colspan="2">&#160;</td></tr>
  187. <tr class="memitem:a58d6ea245f1bc3ae7a6df311cd25052f"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a58d6ea245f1bc3ae7a6df311cd25052f">open</a> (<a class="el" href="class_fat_file.html">FatFile</a> *dirFile, const char *path, oflag_t oflag)</td></tr>
  188. <tr class="separator:a58d6ea245f1bc3ae7a6df311cd25052f"><td class="memSeparator" colspan="2">&#160;</td></tr>
  189. <tr class="memitem:afd3e4d5a76b6751ca796fc57f4dd2be4"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#afd3e4d5a76b6751ca796fc57f4dd2be4">open</a> (const char *path, oflag_t oflag=0X00)</td></tr>
  190. <tr class="separator:afd3e4d5a76b6751ca796fc57f4dd2be4"><td class="memSeparator" colspan="2">&#160;</td></tr>
  191. <tr class="memitem:a7f98b908a686574efbd7e1d20121ef9a"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a7f98b908a686574efbd7e1d20121ef9a">openNext</a> (<a class="el" href="class_fat_file.html">FatFile</a> *dirFile, oflag_t oflag=0X00)</td></tr>
  192. <tr class="separator:a7f98b908a686574efbd7e1d20121ef9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
  193. <tr class="memitem:a7e0c0548fed3a69e7284b91b694439d4"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a7e0c0548fed3a69e7284b91b694439d4">openRoot</a> (<a class="el" href="class_fat_volume.html">FatVolume</a> *vol)</td></tr>
  194. <tr class="separator:a7e0c0548fed3a69e7284b91b694439d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
  195. <tr class="memitem:acd141c43d03cf790b3b9806f3b059e77"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#acd141c43d03cf790b3b9806f3b059e77">operator bool</a> ()</td></tr>
  196. <tr class="separator:acd141c43d03cf790b3b9806f3b059e77"><td class="memSeparator" colspan="2">&#160;</td></tr>
  197. <tr class="memitem:ac05b7136b887539426856c623869aa3a"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#ac05b7136b887539426856c623869aa3a">peek</a> ()</td></tr>
  198. <tr class="separator:ac05b7136b887539426856c623869aa3a"><td class="memSeparator" colspan="2">&#160;</td></tr>
  199. <tr class="memitem:aeeb13b9de68bf9097c863c41d655ee83"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#aeeb13b9de68bf9097c863c41d655ee83">preAllocate</a> (uint32_t length)</td></tr>
  200. <tr class="separator:aeeb13b9de68bf9097c863c41d655ee83"><td class="memSeparator" colspan="2">&#160;</td></tr>
  201. <tr class="memitem:a22be4c339d0bfa331f75415b74dd4f37"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a22be4c339d0bfa331f75415b74dd4f37">printAccessDate</a> (<a class="el" href="_sys_call_8h.html#ac62f6449331cfe1a71f29be30efe7890">print_t</a> *pr)</td></tr>
  202. <tr class="separator:a22be4c339d0bfa331f75415b74dd4f37"><td class="memSeparator" colspan="2">&#160;</td></tr>
  203. <tr class="memitem:a19b3196bb1f6a68a2447e53b09369aef"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a19b3196bb1f6a68a2447e53b09369aef">printAccessDateTime</a> (<a class="el" href="_sys_call_8h.html#ac62f6449331cfe1a71f29be30efe7890">print_t</a> *pr)</td></tr>
  204. <tr class="separator:a19b3196bb1f6a68a2447e53b09369aef"><td class="memSeparator" colspan="2">&#160;</td></tr>
  205. <tr class="memitem:ab22396a285e27b53501a0047ddd97f59"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#ab22396a285e27b53501a0047ddd97f59">printCreateDateTime</a> (<a class="el" href="_sys_call_8h.html#ac62f6449331cfe1a71f29be30efe7890">print_t</a> *pr)</td></tr>
  206. <tr class="separator:ab22396a285e27b53501a0047ddd97f59"><td class="memSeparator" colspan="2">&#160;</td></tr>
  207. <tr class="memitem:aa4a61a0cca1813d2ad0f6fe99cc4e41d"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#aa4a61a0cca1813d2ad0f6fe99cc4e41d">printField</a> (double value, char term, uint8_t prec=2)</td></tr>
  208. <tr class="separator:aa4a61a0cca1813d2ad0f6fe99cc4e41d"><td class="memSeparator" colspan="2">&#160;</td></tr>
  209. <tr class="memitem:a90ccef676afd62bbe7c773dd863a56e0"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a90ccef676afd62bbe7c773dd863a56e0">printField</a> (float value, char term, uint8_t prec=2)</td></tr>
  210. <tr class="separator:a90ccef676afd62bbe7c773dd863a56e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
  211. <tr class="memitem:a8f906be79086f38943cb0911310d67bf"><td class="memTemplParams" colspan="2">template&lt;typename Type &gt; </td></tr>
  212. <tr class="memitem:a8f906be79086f38943cb0911310d67bf"><td class="memTemplItemLeft" align="right" valign="top">size_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a8f906be79086f38943cb0911310d67bf">printField</a> (Type value, char term)</td></tr>
  213. <tr class="separator:a8f906be79086f38943cb0911310d67bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
  214. <tr class="memitem:a12a5d2de2737c201aa39ca1bd2ab9c47"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a12a5d2de2737c201aa39ca1bd2ab9c47">printFileSize</a> (<a class="el" href="_sys_call_8h.html#ac62f6449331cfe1a71f29be30efe7890">print_t</a> *pr)</td></tr>
  215. <tr class="separator:a12a5d2de2737c201aa39ca1bd2ab9c47"><td class="memSeparator" colspan="2">&#160;</td></tr>
  216. <tr class="memitem:a43c8a1cabcae673e43c590f5db44c65a"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a43c8a1cabcae673e43c590f5db44c65a">printModifyDateTime</a> (<a class="el" href="_sys_call_8h.html#ac62f6449331cfe1a71f29be30efe7890">print_t</a> *pr)</td></tr>
  217. <tr class="separator:a43c8a1cabcae673e43c590f5db44c65a"><td class="memSeparator" colspan="2">&#160;</td></tr>
  218. <tr class="memitem:afe18a787fb8640e2d2483370c770f82f"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#afe18a787fb8640e2d2483370c770f82f">printName</a> (<a class="el" href="_sys_call_8h.html#ac62f6449331cfe1a71f29be30efe7890">print_t</a> *pr)</td></tr>
  219. <tr class="separator:afe18a787fb8640e2d2483370c770f82f"><td class="memSeparator" colspan="2">&#160;</td></tr>
  220. <tr class="memitem:ad1cbc3aeb0f5193b7a26595966da9621"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#ad1cbc3aeb0f5193b7a26595966da9621">printName</a> ()</td></tr>
  221. <tr class="separator:ad1cbc3aeb0f5193b7a26595966da9621"><td class="memSeparator" colspan="2">&#160;</td></tr>
  222. <tr class="memitem:a791cd7aade71f609aab62ec018aea3c0"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a791cd7aade71f609aab62ec018aea3c0">printSFN</a> (<a class="el" href="_sys_call_8h.html#ac62f6449331cfe1a71f29be30efe7890">print_t</a> *pr)</td></tr>
  223. <tr class="separator:a791cd7aade71f609aab62ec018aea3c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
  224. <tr class="memitem:a60ae55ff6fe158c2340071d702a363c5"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a60ae55ff6fe158c2340071d702a363c5">read</a> ()</td></tr>
  225. <tr class="separator:a60ae55ff6fe158c2340071d702a363c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
  226. <tr class="memitem:aba893af8107a18017482d2311b066187"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#aba893af8107a18017482d2311b066187">read</a> (void *buf, size_t count)</td></tr>
  227. <tr class="separator:aba893af8107a18017482d2311b066187"><td class="memSeparator" colspan="2">&#160;</td></tr>
  228. <tr class="memitem:a29502cd34ef186763d2196daef27df1f"><td class="memItemLeft" align="right" valign="top">int8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a29502cd34ef186763d2196daef27df1f">readDir</a> (DirFat_t *dir)</td></tr>
  229. <tr class="separator:a29502cd34ef186763d2196daef27df1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
  230. <tr class="memitem:ac837a537fbcca14c7aa390c5fc9f4e7c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#ac837a537fbcca14c7aa390c5fc9f4e7c">remove</a> ()</td></tr>
  231. <tr class="separator:ac837a537fbcca14c7aa390c5fc9f4e7c"><td class="memSeparator" colspan="2">&#160;</td></tr>
  232. <tr class="memitem:a75d3276f0b02b03e863afafe5731fedb"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a75d3276f0b02b03e863afafe5731fedb">remove</a> (const char *path)</td></tr>
  233. <tr class="separator:a75d3276f0b02b03e863afafe5731fedb"><td class="memSeparator" colspan="2">&#160;</td></tr>
  234. <tr class="memitem:a4cebcac13c1f4c9de7a055ae73133599"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a4cebcac13c1f4c9de7a055ae73133599">rename</a> (const char *newPath)</td></tr>
  235. <tr class="separator:a4cebcac13c1f4c9de7a055ae73133599"><td class="memSeparator" colspan="2">&#160;</td></tr>
  236. <tr class="memitem:a4b42f2454ff462555c07ea094a92a1e0"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a4b42f2454ff462555c07ea094a92a1e0">rename</a> (<a class="el" href="class_fat_file.html">FatFile</a> *dirFile, const char *newPath)</td></tr>
  237. <tr class="separator:a4b42f2454ff462555c07ea094a92a1e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
  238. <tr class="memitem:a5aac6e0b3cb08fc8b8668e916a8b0ca5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a5aac6e0b3cb08fc8b8668e916a8b0ca5">rewind</a> ()</td></tr>
  239. <tr class="separator:a5aac6e0b3cb08fc8b8668e916a8b0ca5"><td class="memSeparator" colspan="2">&#160;</td></tr>
  240. <tr class="memitem:a9515bac181d33e7f0125e88fa2ccd283"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a9515bac181d33e7f0125e88fa2ccd283">rmdir</a> ()</td></tr>
  241. <tr class="separator:a9515bac181d33e7f0125e88fa2ccd283"><td class="memSeparator" colspan="2">&#160;</td></tr>
  242. <tr class="memitem:ac780a80526f86d3def701ecdc99d8bfe"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#ac780a80526f86d3def701ecdc99d8bfe">rmRfStar</a> ()</td></tr>
  243. <tr class="separator:ac780a80526f86d3def701ecdc99d8bfe"><td class="memSeparator" colspan="2">&#160;</td></tr>
  244. <tr class="memitem:a5812037ea30777cc350698ad26f2c73f"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a5812037ea30777cc350698ad26f2c73f">seekCur</a> (int32_t offset)</td></tr>
  245. <tr class="separator:a5812037ea30777cc350698ad26f2c73f"><td class="memSeparator" colspan="2">&#160;</td></tr>
  246. <tr class="memitem:a84f677f4e75ef6fa2eb632f4cdf6b486"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a84f677f4e75ef6fa2eb632f4cdf6b486">seekEnd</a> (int32_t offset=0)</td></tr>
  247. <tr class="separator:a84f677f4e75ef6fa2eb632f4cdf6b486"><td class="memSeparator" colspan="2">&#160;</td></tr>
  248. <tr class="memitem:ab067190d25733ed7e697d9890f61fd7a"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#ab067190d25733ed7e697d9890f61fd7a">seekSet</a> (uint32_t pos)</td></tr>
  249. <tr class="separator:ab067190d25733ed7e697d9890f61fd7a"><td class="memSeparator" colspan="2">&#160;</td></tr>
  250. <tr class="memitem:a67f3dc4896c542d695e11aac927f585e"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a67f3dc4896c542d695e11aac927f585e">sync</a> ()</td></tr>
  251. <tr class="separator:a67f3dc4896c542d695e11aac927f585e"><td class="memSeparator" colspan="2">&#160;</td></tr>
  252. <tr class="memitem:a56dabdf73833b7e961c4530eb8e16d23"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a56dabdf73833b7e961c4530eb8e16d23">timestamp</a> (uint8_t flags, uint16_t year, uint8_t month, uint8_t day, uint8_t hour, uint8_t minute, uint8_t second)</td></tr>
  253. <tr class="separator:a56dabdf73833b7e961c4530eb8e16d23"><td class="memSeparator" colspan="2">&#160;</td></tr>
  254. <tr class="memitem:a7dda881dac19ea2aa9b2e85a229a98d7"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a7dda881dac19ea2aa9b2e85a229a98d7">truncate</a> ()</td></tr>
  255. <tr class="separator:a7dda881dac19ea2aa9b2e85a229a98d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
  256. <tr class="memitem:aa6e663098a578635d37d92e82d18d616"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#aa6e663098a578635d37d92e82d18d616">truncate</a> (uint32_t length)</td></tr>
  257. <tr class="separator:aa6e663098a578635d37d92e82d18d616"><td class="memSeparator" colspan="2">&#160;</td></tr>
  258. <tr class="memitem:a081dd810835f1ebf8c23ffe92706b485"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a081dd810835f1ebf8c23ffe92706b485">write</a> (const char *str)</td></tr>
  259. <tr class="separator:a081dd810835f1ebf8c23ffe92706b485"><td class="memSeparator" colspan="2">&#160;</td></tr>
  260. <tr class="memitem:ae51e724ac6cc3d67d64a5a666d5850f1"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#ae51e724ac6cc3d67d64a5a666d5850f1">write</a> (uint8_t b)</td></tr>
  261. <tr class="separator:ae51e724ac6cc3d67d64a5a666d5850f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
  262. <tr class="memitem:a5d84d871ac904a22aa48308713d14682"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a5d84d871ac904a22aa48308713d14682">write</a> (const void *buf, size_t count)</td></tr>
  263. <tr class="separator:a5d84d871ac904a22aa48308713d14682"><td class="memSeparator" colspan="2">&#160;</td></tr>
  264. </table><table class="memberdecls">
  265. <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
  266. Static Public Member Functions</h2></td></tr>
  267. <tr class="memitem:a94df8090f16e9666cdc53ca20f6aff90"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a94df8090f16e9666cdc53ca20f6aff90">legal83Char</a> (uint8_t c)</td></tr>
  268. <tr class="separator:a94df8090f16e9666cdc53ca20f6aff90"><td class="memSeparator" colspan="2">&#160;</td></tr>
  269. <tr class="memitem:aabcd863883bfcfb37b63dbd6021f7eb8"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#aabcd863883bfcfb37b63dbd6021f7eb8">printFatDate</a> (<a class="el" href="_sys_call_8h.html#ac62f6449331cfe1a71f29be30efe7890">print_t</a> *pr, uint16_t fatDate)</td></tr>
  270. <tr class="separator:aabcd863883bfcfb37b63dbd6021f7eb8"><td class="memSeparator" colspan="2">&#160;</td></tr>
  271. <tr class="memitem:a7f84d953190ea94710dad9ebb897b957"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a7f84d953190ea94710dad9ebb897b957">printFatTime</a> (<a class="el" href="_sys_call_8h.html#ac62f6449331cfe1a71f29be30efe7890">print_t</a> *pr, uint16_t fatTime)</td></tr>
  272. <tr class="separator:a7f84d953190ea94710dad9ebb897b957"><td class="memSeparator" colspan="2">&#160;</td></tr>
  273. </table><table class="memberdecls">
  274. <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
  275. Friends</h2></td></tr>
  276. <tr class="memitem:a6ca3f436167f187097347a20ea221555"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_fat_file.html#a6ca3f436167f187097347a20ea221555">FatVolume</a></td></tr>
  277. <tr class="separator:a6ca3f436167f187097347a20ea221555"><td class="memSeparator" colspan="2">&#160;</td></tr>
  278. </table>
  279. <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
  280. <div class="textblock"><p>Basic file class. </p>
  281. </div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
  282. <a id="a7b591c9b92165fa8e4eae8c30c30e533"></a>
  283. <h2 class="memtitle"><span class="permalink"><a href="#a7b591c9b92165fa8e4eae8c30c30e533">&#9670;&nbsp;</a></span>FatFile() <span class="overload">[1/2]</span></h2>
  284. <div class="memitem">
  285. <div class="memproto">
  286. <table class="mlabels">
  287. <tr>
  288. <td class="mlabels-left">
  289. <table class="memname">
  290. <tr>
  291. <td class="memname">FatFile::FatFile </td>
  292. <td>(</td>
  293. <td class="paramname"></td><td>)</td>
  294. <td></td>
  295. </tr>
  296. </table>
  297. </td>
  298. <td class="mlabels-right">
  299. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  300. </tr>
  301. </table>
  302. </div><div class="memdoc">
  303. <p>Create an instance. </p>
  304. </div>
  305. </div>
  306. <a id="a38f9a296138648d6135cbbbf41ef6b92"></a>
  307. <h2 class="memtitle"><span class="permalink"><a href="#a38f9a296138648d6135cbbbf41ef6b92">&#9670;&nbsp;</a></span>FatFile() <span class="overload">[2/2]</span></h2>
  308. <div class="memitem">
  309. <div class="memproto">
  310. <table class="mlabels">
  311. <tr>
  312. <td class="mlabels-left">
  313. <table class="memname">
  314. <tr>
  315. <td class="memname">FatFile::FatFile </td>
  316. <td>(</td>
  317. <td class="paramtype">const char *&#160;</td>
  318. <td class="paramname"><em>path</em>, </td>
  319. </tr>
  320. <tr>
  321. <td class="paramkey"></td>
  322. <td></td>
  323. <td class="paramtype">oflag_t&#160;</td>
  324. <td class="paramname"><em>oflag</em>&#160;</td>
  325. </tr>
  326. <tr>
  327. <td></td>
  328. <td>)</td>
  329. <td></td><td></td>
  330. </tr>
  331. </table>
  332. </td>
  333. <td class="mlabels-right">
  334. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  335. </tr>
  336. </table>
  337. </div><div class="memdoc">
  338. <p>Create a file object and open it in the current working directory.</p>
  339. <dl class="params"><dt>Parameters</dt><dd>
  340. <table class="params">
  341. <tr><td class="paramdir">[in]</td><td class="paramname">path</td><td>A path for a file to be opened.</td></tr>
  342. <tr><td class="paramdir">[in]</td><td class="paramname">oflag</td><td>Values for <em>oflag</em> are constructed by a bitwise-inclusive OR of open flags. see <a class="el" href="class_fat_file.html#a58d6ea245f1bc3ae7a6df311cd25052f">FatFile::open(FatFile*, const char*, uint8_t)</a>. </td></tr>
  343. </table>
  344. </dd>
  345. </dl>
  346. </div>
  347. </div>
  348. <h2 class="groupheader">Member Function Documentation</h2>
  349. <a id="a4baea142c9cd53293a93ef3d6a67aa16"></a>
  350. <h2 class="memtitle"><span class="permalink"><a href="#a4baea142c9cd53293a93ef3d6a67aa16">&#9670;&nbsp;</a></span>available()</h2>
  351. <div class="memitem">
  352. <div class="memproto">
  353. <table class="mlabels">
  354. <tr>
  355. <td class="mlabels-left">
  356. <table class="memname">
  357. <tr>
  358. <td class="memname">int FatFile::available </td>
  359. <td>(</td>
  360. <td class="paramname"></td><td>)</td>
  361. <td></td>
  362. </tr>
  363. </table>
  364. </td>
  365. <td class="mlabels-right">
  366. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  367. </tr>
  368. </table>
  369. </div><div class="memdoc">
  370. <dl class="section return"><dt>Returns</dt><dd>The number of bytes available from the current position to EOF for normal files. INT_MAX is returned for very large files.</dd></dl>
  371. <p>available64() is recomended for very large files.</p>
  372. <p>Zero is returned for directory files. </p>
  373. </div>
  374. </div>
  375. <a id="a651ffa37e7e586fc3c2de8cbbd500ea6"></a>
  376. <h2 class="memtitle"><span class="permalink"><a href="#a651ffa37e7e586fc3c2de8cbbd500ea6">&#9670;&nbsp;</a></span>available32()</h2>
  377. <div class="memitem">
  378. <div class="memproto">
  379. <table class="mlabels">
  380. <tr>
  381. <td class="mlabels-left">
  382. <table class="memname">
  383. <tr>
  384. <td class="memname">uint32_t FatFile::available32 </td>
  385. <td>(</td>
  386. <td class="paramname"></td><td>)</td>
  387. <td></td>
  388. </tr>
  389. </table>
  390. </td>
  391. <td class="mlabels-right">
  392. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  393. </tr>
  394. </table>
  395. </div><div class="memdoc">
  396. <dl class="section return"><dt>Returns</dt><dd>The number of bytes available from the current position to EOF for normal files. Zero is returned for directory files. </dd></dl>
  397. </div>
  398. </div>
  399. <a id="a052e2c15a39b322a5307b693b8835b22"></a>
  400. <h2 class="memtitle"><span class="permalink"><a href="#a052e2c15a39b322a5307b693b8835b22">&#9670;&nbsp;</a></span>clearError()</h2>
  401. <div class="memitem">
  402. <div class="memproto">
  403. <table class="mlabels">
  404. <tr>
  405. <td class="mlabels-left">
  406. <table class="memname">
  407. <tr>
  408. <td class="memname">void FatFile::clearError </td>
  409. <td>(</td>
  410. <td class="paramname"></td><td>)</td>
  411. <td></td>
  412. </tr>
  413. </table>
  414. </td>
  415. <td class="mlabels-right">
  416. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  417. </tr>
  418. </table>
  419. </div><div class="memdoc">
  420. <p>Clear all error bits. </p>
  421. </div>
  422. </div>
  423. <a id="aeca2a2eff91e6aa55fe1b0e3860c9a05"></a>
  424. <h2 class="memtitle"><span class="permalink"><a href="#aeca2a2eff91e6aa55fe1b0e3860c9a05">&#9670;&nbsp;</a></span>clearWriteError()</h2>
  425. <div class="memitem">
  426. <div class="memproto">
  427. <table class="mlabels">
  428. <tr>
  429. <td class="mlabels-left">
  430. <table class="memname">
  431. <tr>
  432. <td class="memname">void FatFile::clearWriteError </td>
  433. <td>(</td>
  434. <td class="paramname"></td><td>)</td>
  435. <td></td>
  436. </tr>
  437. </table>
  438. </td>
  439. <td class="mlabels-right">
  440. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  441. </tr>
  442. </table>
  443. </div><div class="memdoc">
  444. <p>Set writeError to zero </p>
  445. </div>
  446. </div>
  447. <a id="afd16af325e0642e4bff6430b7d8bb18b"></a>
  448. <h2 class="memtitle"><span class="permalink"><a href="#afd16af325e0642e4bff6430b7d8bb18b">&#9670;&nbsp;</a></span>close()</h2>
  449. <div class="memitem">
  450. <div class="memproto">
  451. <table class="memname">
  452. <tr>
  453. <td class="memname">bool FatFile::close </td>
  454. <td>(</td>
  455. <td class="paramname"></td><td>)</td>
  456. <td></td>
  457. </tr>
  458. </table>
  459. </div><div class="memdoc">
  460. <p>Close a file and force cached data and directory information to be written to the storage device.</p>
  461. <dl class="section return"><dt>Returns</dt><dd>true for success or false for failure. </dd></dl>
  462. </div>
  463. </div>
  464. <a id="a12b3c5a763416ca62c70e3db74033cd0"></a>
  465. <h2 class="memtitle"><span class="permalink"><a href="#a12b3c5a763416ca62c70e3db74033cd0">&#9670;&nbsp;</a></span>contiguousRange()</h2>
  466. <div class="memitem">
  467. <div class="memproto">
  468. <table class="memname">
  469. <tr>
  470. <td class="memname">bool FatFile::contiguousRange </td>
  471. <td>(</td>
  472. <td class="paramtype">uint32_t *&#160;</td>
  473. <td class="paramname"><em>bgnSector</em>, </td>
  474. </tr>
  475. <tr>
  476. <td class="paramkey"></td>
  477. <td></td>
  478. <td class="paramtype">uint32_t *&#160;</td>
  479. <td class="paramname"><em>endSector</em>&#160;</td>
  480. </tr>
  481. <tr>
  482. <td></td>
  483. <td>)</td>
  484. <td></td><td></td>
  485. </tr>
  486. </table>
  487. </div><div class="memdoc">
  488. <p>Check for contiguous file and return its raw sector range.</p>
  489. <dl class="params"><dt>Parameters</dt><dd>
  490. <table class="params">
  491. <tr><td class="paramdir">[out]</td><td class="paramname">bgnSector</td><td>the first sector address for the file. </td></tr>
  492. <tr><td class="paramdir">[out]</td><td class="paramname">endSector</td><td>the last sector address for the file.</td></tr>
  493. </table>
  494. </dd>
  495. </dl>
  496. <dl class="section return"><dt>Returns</dt><dd>true for success or false for failure. </dd></dl>
  497. </div>
  498. </div>
  499. <a id="a0afc2a1cffa238d1cb2049bfa2d8d199"></a>
  500. <h2 class="memtitle"><span class="permalink"><a href="#a0afc2a1cffa238d1cb2049bfa2d8d199">&#9670;&nbsp;</a></span>createContiguous() <span class="overload">[1/2]</span></h2>
  501. <div class="memitem">
  502. <div class="memproto">
  503. <table class="memname">
  504. <tr>
  505. <td class="memname">bool FatFile::createContiguous </td>
  506. <td>(</td>
  507. <td class="paramtype"><a class="el" href="class_fat_file.html">FatFile</a> *&#160;</td>
  508. <td class="paramname"><em>dirFile</em>, </td>
  509. </tr>
  510. <tr>
  511. <td class="paramkey"></td>
  512. <td></td>
  513. <td class="paramtype">const char *&#160;</td>
  514. <td class="paramname"><em>path</em>, </td>
  515. </tr>
  516. <tr>
  517. <td class="paramkey"></td>
  518. <td></td>
  519. <td class="paramtype">uint32_t&#160;</td>
  520. <td class="paramname"><em>size</em>&#160;</td>
  521. </tr>
  522. <tr>
  523. <td></td>
  524. <td>)</td>
  525. <td></td><td></td>
  526. </tr>
  527. </table>
  528. </div><div class="memdoc">
  529. <p>Create and open a new contiguous file of a specified size.</p>
  530. <dl class="params"><dt>Parameters</dt><dd>
  531. <table class="params">
  532. <tr><td class="paramdir">[in]</td><td class="paramname">dirFile</td><td>The directory where the file will be created. </td></tr>
  533. <tr><td class="paramdir">[in]</td><td class="paramname">path</td><td>A path with a validfile name. </td></tr>
  534. <tr><td class="paramdir">[in]</td><td class="paramname">size</td><td>The desired file size.</td></tr>
  535. </table>
  536. </dd>
  537. </dl>
  538. <dl class="section return"><dt>Returns</dt><dd>true for success or false for failure. </dd></dl>
  539. </div>
  540. </div>
  541. <a id="a0853fbd44aee2798d14d8e3aed78f8bf"></a>
  542. <h2 class="memtitle"><span class="permalink"><a href="#a0853fbd44aee2798d14d8e3aed78f8bf">&#9670;&nbsp;</a></span>createContiguous() <span class="overload">[2/2]</span></h2>
  543. <div class="memitem">
  544. <div class="memproto">
  545. <table class="memname">
  546. <tr>
  547. <td class="memname">bool FatFile::createContiguous </td>
  548. <td>(</td>
  549. <td class="paramtype">const char *&#160;</td>
  550. <td class="paramname"><em>path</em>, </td>
  551. </tr>
  552. <tr>
  553. <td class="paramkey"></td>
  554. <td></td>
  555. <td class="paramtype">uint32_t&#160;</td>
  556. <td class="paramname"><em>size</em>&#160;</td>
  557. </tr>
  558. <tr>
  559. <td></td>
  560. <td>)</td>
  561. <td></td><td></td>
  562. </tr>
  563. </table>
  564. </div><div class="memdoc">
  565. <p>Create and open a new contiguous file of a specified size.</p>
  566. <dl class="params"><dt>Parameters</dt><dd>
  567. <table class="params">
  568. <tr><td class="paramdir">[in]</td><td class="paramname">path</td><td>A path with a validfile name. </td></tr>
  569. <tr><td class="paramdir">[in]</td><td class="paramname">size</td><td>The desired file size.</td></tr>
  570. </table>
  571. </dd>
  572. </dl>
  573. <dl class="section return"><dt>Returns</dt><dd>true for success or false for failure. </dd></dl>
  574. </div>
  575. </div>
  576. <a id="a526f3dd56ce205690e45ffc86ef6f891"></a>
  577. <h2 class="memtitle"><span class="permalink"><a href="#a526f3dd56ce205690e45ffc86ef6f891">&#9670;&nbsp;</a></span>curCluster()</h2>
  578. <div class="memitem">
  579. <div class="memproto">
  580. <table class="mlabels">
  581. <tr>
  582. <td class="mlabels-left">
  583. <table class="memname">
  584. <tr>
  585. <td class="memname">uint32_t FatFile::curCluster </td>
  586. <td>(</td>
  587. <td class="paramname"></td><td>)</td>
  588. <td> const</td>
  589. </tr>
  590. </table>
  591. </td>
  592. <td class="mlabels-right">
  593. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  594. </tr>
  595. </table>
  596. </div><div class="memdoc">
  597. <dl class="section return"><dt>Returns</dt><dd>The current cluster number for a file or directory. </dd></dl>
  598. </div>
  599. </div>
  600. <a id="a97e0620949f97e9b9c91ed1094d728aa"></a>
  601. <h2 class="memtitle"><span class="permalink"><a href="#a97e0620949f97e9b9c91ed1094d728aa">&#9670;&nbsp;</a></span>curPosition()</h2>
  602. <div class="memitem">
  603. <div class="memproto">
  604. <table class="mlabels">
  605. <tr>
  606. <td class="mlabels-left">
  607. <table class="memname">
  608. <tr>
  609. <td class="memname">uint32_t FatFile::curPosition </td>
  610. <td>(</td>
  611. <td class="paramname"></td><td>)</td>
  612. <td> const</td>
  613. </tr>
  614. </table>
  615. </td>
  616. <td class="mlabels-right">
  617. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  618. </tr>
  619. </table>
  620. </div><div class="memdoc">
  621. <dl class="section return"><dt>Returns</dt><dd>The current position for a file or directory. </dd></dl>
  622. </div>
  623. </div>
  624. <a id="a2f4e9ab3056125b07f15d14ca26d5346"></a>
  625. <h2 class="memtitle"><span class="permalink"><a href="#a2f4e9ab3056125b07f15d14ca26d5346">&#9670;&nbsp;</a></span>dirEntry()</h2>
  626. <div class="memitem">
  627. <div class="memproto">
  628. <table class="memname">
  629. <tr>
  630. <td class="memname">bool FatFile::dirEntry </td>
  631. <td>(</td>
  632. <td class="paramtype">DirFat_t *&#160;</td>
  633. <td class="paramname"><em>dir</em></td><td>)</td>
  634. <td></td>
  635. </tr>
  636. </table>
  637. </div><div class="memdoc">
  638. <p>Return a file's directory entry.</p>
  639. <dl class="params"><dt>Parameters</dt><dd>
  640. <table class="params">
  641. <tr><td class="paramdir">[out]</td><td class="paramname">dir</td><td>Location for return of the file's directory entry.</td></tr>
  642. </table>
  643. </dd>
  644. </dl>
  645. <dl class="section return"><dt>Returns</dt><dd>true for success or false for failure. </dd></dl>
  646. </div>
  647. </div>
  648. <a id="ae5ec24d4a94d3780384d3f2b731c7eb9"></a>
  649. <h2 class="memtitle"><span class="permalink"><a href="#ae5ec24d4a94d3780384d3f2b731c7eb9">&#9670;&nbsp;</a></span>dirIndex()</h2>
  650. <div class="memitem">
  651. <div class="memproto">
  652. <table class="mlabels">
  653. <tr>
  654. <td class="mlabels-left">
  655. <table class="memname">
  656. <tr>
  657. <td class="memname">uint16_t FatFile::dirIndex </td>
  658. <td>(</td>
  659. <td class="paramname"></td><td>)</td>
  660. <td></td>
  661. </tr>
  662. </table>
  663. </td>
  664. <td class="mlabels-right">
  665. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  666. </tr>
  667. </table>
  668. </div><div class="memdoc">
  669. <dl class="section return"><dt>Returns</dt><dd>Directory entry index. </dd></dl>
  670. </div>
  671. </div>
  672. <a id="ae2ed15f05c9ccbce355e7a8d3ce8382d"></a>
  673. <h2 class="memtitle"><span class="permalink"><a href="#ae2ed15f05c9ccbce355e7a8d3ce8382d">&#9670;&nbsp;</a></span>dirSize()</h2>
  674. <div class="memitem">
  675. <div class="memproto">
  676. <table class="memname">
  677. <tr>
  678. <td class="memname">uint32_t FatFile::dirSize </td>
  679. <td>(</td>
  680. <td class="paramname"></td><td>)</td>
  681. <td></td>
  682. </tr>
  683. </table>
  684. </div><div class="memdoc">
  685. <dl class="section return"><dt>Returns</dt><dd>The number of bytes allocated to a directory or zero if an error occurs. </dd></dl>
  686. </div>
  687. </div>
  688. <a id="a4f01d27954ae49aeb6888ac7302f55d9"></a>
  689. <h2 class="memtitle"><span class="permalink"><a href="#a4f01d27954ae49aeb6888ac7302f55d9">&#9670;&nbsp;</a></span>dmpFile()</h2>
  690. <div class="memitem">
  691. <div class="memproto">
  692. <table class="memname">
  693. <tr>
  694. <td class="memname">void FatFile::dmpFile </td>
  695. <td>(</td>
  696. <td class="paramtype"><a class="el" href="_sys_call_8h.html#ac62f6449331cfe1a71f29be30efe7890">print_t</a> *&#160;</td>
  697. <td class="paramname"><em>pr</em>, </td>
  698. </tr>
  699. <tr>
  700. <td class="paramkey"></td>
  701. <td></td>
  702. <td class="paramtype">uint32_t&#160;</td>
  703. <td class="paramname"><em>pos</em>, </td>
  704. </tr>
  705. <tr>
  706. <td class="paramkey"></td>
  707. <td></td>
  708. <td class="paramtype">size_t&#160;</td>
  709. <td class="paramname"><em>n</em>&#160;</td>
  710. </tr>
  711. <tr>
  712. <td></td>
  713. <td>)</td>
  714. <td></td><td></td>
  715. </tr>
  716. </table>
  717. </div><div class="memdoc">
  718. <p>Dump file in Hex </p><dl class="params"><dt>Parameters</dt><dd>
  719. <table class="params">
  720. <tr><td class="paramdir">[in]</td><td class="paramname">pr</td><td>Print stream for list. </td></tr>
  721. <tr><td class="paramdir">[in]</td><td class="paramname">pos</td><td>Start position in file. </td></tr>
  722. <tr><td class="paramdir">[in]</td><td class="paramname">n</td><td>number of locations to dump. </td></tr>
  723. </table>
  724. </dd>
  725. </dl>
  726. </div>
  727. </div>
  728. <a id="a50242f98dea0d4488ce4039a279f2a57"></a>
  729. <h2 class="memtitle"><span class="permalink"><a href="#a50242f98dea0d4488ce4039a279f2a57">&#9670;&nbsp;</a></span>exists()</h2>
  730. <div class="memitem">
  731. <div class="memproto">
  732. <table class="mlabels">
  733. <tr>
  734. <td class="mlabels-left">
  735. <table class="memname">
  736. <tr>
  737. <td class="memname">bool FatFile::exists </td>
  738. <td>(</td>
  739. <td class="paramtype">const char *&#160;</td>
  740. <td class="paramname"><em>path</em></td><td>)</td>
  741. <td></td>
  742. </tr>
  743. </table>
  744. </td>
  745. <td class="mlabels-right">
  746. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  747. </tr>
  748. </table>
  749. </div><div class="memdoc">
  750. <p>Test for the existence of a file in a directory</p>
  751. <dl class="params"><dt>Parameters</dt><dd>
  752. <table class="params">
  753. <tr><td class="paramdir">[in]</td><td class="paramname">path</td><td>Path of the file to be tested for.</td></tr>
  754. </table>
  755. </dd>
  756. </dl>
  757. <p>The calling instance must be an open directory file.</p>
  758. <p>dirFile.exists("TOFIND.TXT") searches for "TOFIND.TXT" in the directory dirFile.</p>
  759. <dl class="section return"><dt>Returns</dt><dd>True if the file exists. </dd></dl>
  760. </div>
  761. </div>
  762. <a id="a33e0b0a8a342047f29ab8e8aae9cae14"></a>
  763. <h2 class="memtitle"><span class="permalink"><a href="#a33e0b0a8a342047f29ab8e8aae9cae14">&#9670;&nbsp;</a></span>fgetpos()</h2>
  764. <div class="memitem">
  765. <div class="memproto">
  766. <table class="memname">
  767. <tr>
  768. <td class="memname">void FatFile::fgetpos </td>
  769. <td>(</td>
  770. <td class="paramtype">fspos_t *&#160;</td>
  771. <td class="paramname"><em>pos</em></td><td>)</td>
  772. <td></td>
  773. </tr>
  774. </table>
  775. </div><div class="memdoc">
  776. <p>get position for streams </p><dl class="params"><dt>Parameters</dt><dd>
  777. <table class="params">
  778. <tr><td class="paramdir">[out]</td><td class="paramname">pos</td><td>struct to receive position </td></tr>
  779. </table>
  780. </dd>
  781. </dl>
  782. </div>
  783. </div>
  784. <a id="a9e05a51767f7c8f70c6f337eecbdca03"></a>
  785. <h2 class="memtitle"><span class="permalink"><a href="#a9e05a51767f7c8f70c6f337eecbdca03">&#9670;&nbsp;</a></span>fgets()</h2>
  786. <div class="memitem">
  787. <div class="memproto">
  788. <table class="memname">
  789. <tr>
  790. <td class="memname">int FatFile::fgets </td>
  791. <td>(</td>
  792. <td class="paramtype">char *&#160;</td>
  793. <td class="paramname"><em>str</em>, </td>
  794. </tr>
  795. <tr>
  796. <td class="paramkey"></td>
  797. <td></td>
  798. <td class="paramtype">int&#160;</td>
  799. <td class="paramname"><em>num</em>, </td>
  800. </tr>
  801. <tr>
  802. <td class="paramkey"></td>
  803. <td></td>
  804. <td class="paramtype">char *&#160;</td>
  805. <td class="paramname"><em>delim</em> = <code><a class="el" href="_stdio_stream_8h.html#a070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a></code>&#160;</td>
  806. </tr>
  807. <tr>
  808. <td></td>
  809. <td>)</td>
  810. <td></td><td></td>
  811. </tr>
  812. </table>
  813. </div><div class="memdoc">
  814. <p>Get a string from a file.</p>
  815. <p><a class="el" href="class_fat_file.html#a9e05a51767f7c8f70c6f337eecbdca03">fgets()</a> reads bytes from a file into the array pointed to by <em>str</em>, until <em>num</em> - 1 bytes are read, or a delimiter is read and transferred to <em>str</em>, or end-of-file is encountered. The string is then terminated with a null byte.</p>
  816. <p><a class="el" href="class_fat_file.html#a9e05a51767f7c8f70c6f337eecbdca03">fgets()</a> deletes CR, '\r', from the string. This insures only a '\n' terminates the string for Windows text files which use CRLF for newline.</p>
  817. <dl class="params"><dt>Parameters</dt><dd>
  818. <table class="params">
  819. <tr><td class="paramdir">[out]</td><td class="paramname">str</td><td>Pointer to the array where the string is stored. </td></tr>
  820. <tr><td class="paramdir">[in]</td><td class="paramname">num</td><td>Maximum number of characters to be read (including the final null byte). Usually the length of the array <em>str</em> is used. </td></tr>
  821. <tr><td class="paramdir">[in]</td><td class="paramname">delim</td><td>Optional set of delimiters. The default is "\n".</td></tr>
  822. </table>
  823. </dd>
  824. </dl>
  825. <dl class="section return"><dt>Returns</dt><dd>For success <a class="el" href="class_fat_file.html#a9e05a51767f7c8f70c6f337eecbdca03">fgets()</a> returns the length of the string in <em>str</em>. If no data is read, <a class="el" href="class_fat_file.html#a9e05a51767f7c8f70c6f337eecbdca03">fgets()</a> returns zero for EOF or -1 if an error occurred. </dd></dl>
  826. </div>
  827. </div>
  828. <a id="a874940574b9c99e763526465adf8dc28"></a>
  829. <h2 class="memtitle"><span class="permalink"><a href="#a874940574b9c99e763526465adf8dc28">&#9670;&nbsp;</a></span>fileSize()</h2>
  830. <div class="memitem">
  831. <div class="memproto">
  832. <table class="mlabels">
  833. <tr>
  834. <td class="mlabels-left">
  835. <table class="memname">
  836. <tr>
  837. <td class="memname">uint32_t FatFile::fileSize </td>
  838. <td>(</td>
  839. <td class="paramname"></td><td>)</td>
  840. <td> const</td>
  841. </tr>
  842. </table>
  843. </td>
  844. <td class="mlabels-right">
  845. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  846. </tr>
  847. </table>
  848. </div><div class="memdoc">
  849. <dl class="section return"><dt>Returns</dt><dd>The total number of bytes in a file. </dd></dl>
  850. </div>
  851. </div>
  852. <a id="a5ac8a604863d18840f4a93c5c788b7c8"></a>
  853. <h2 class="memtitle"><span class="permalink"><a href="#a5ac8a604863d18840f4a93c5c788b7c8">&#9670;&nbsp;</a></span>firstBlock()</h2>
  854. <div class="memitem">
  855. <div class="memproto">
  856. <table class="mlabels">
  857. <tr>
  858. <td class="mlabels-left">
  859. <table class="memname">
  860. <tr>
  861. <td class="memname">uint32_t FatFile::firstBlock </td>
  862. <td>(</td>
  863. <td class="paramname"></td><td>)</td>
  864. <td> const</td>
  865. </tr>
  866. </table>
  867. </td>
  868. <td class="mlabels-right">
  869. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  870. </tr>
  871. </table>
  872. </div><div class="memdoc">
  873. <dl class="section return"><dt>Returns</dt><dd>first sector of file or zero for empty file. </dd></dl>
  874. </div>
  875. </div>
  876. <a id="af3108df387f30ca3d367dd390a04daaa"></a>
  877. <h2 class="memtitle"><span class="permalink"><a href="#af3108df387f30ca3d367dd390a04daaa">&#9670;&nbsp;</a></span>firstSector()</h2>
  878. <div class="memitem">
  879. <div class="memproto">
  880. <table class="memname">
  881. <tr>
  882. <td class="memname">uint32_t FatFile::firstSector </td>
  883. <td>(</td>
  884. <td class="paramname"></td><td>)</td>
  885. <td> const</td>
  886. </tr>
  887. </table>
  888. </div><div class="memdoc">
  889. <dl class="section return"><dt>Returns</dt><dd>first sector of file or zero for empty file. </dd></dl>
  890. </div>
  891. </div>
  892. <a id="a166b5ff04754cc925f2aee71bf92f800"></a>
  893. <h2 class="memtitle"><span class="permalink"><a href="#a166b5ff04754cc925f2aee71bf92f800">&#9670;&nbsp;</a></span>flush()</h2>
  894. <div class="memitem">
  895. <div class="memproto">
  896. <table class="mlabels">
  897. <tr>
  898. <td class="mlabels-left">
  899. <table class="memname">
  900. <tr>
  901. <td class="memname">void FatFile::flush </td>
  902. <td>(</td>
  903. <td class="paramname"></td><td>)</td>
  904. <td></td>
  905. </tr>
  906. </table>
  907. </td>
  908. <td class="mlabels-right">
  909. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  910. </tr>
  911. </table>
  912. </div><div class="memdoc">
  913. <p>Arduino name for <a class="el" href="class_fat_file.html#a67f3dc4896c542d695e11aac927f585e">sync()</a> </p>
  914. </div>
  915. </div>
  916. <a id="ac042c43d41ecfff4e101b88f3f82086e"></a>
  917. <h2 class="memtitle"><span class="permalink"><a href="#ac042c43d41ecfff4e101b88f3f82086e">&#9670;&nbsp;</a></span>fsetpos()</h2>
  918. <div class="memitem">
  919. <div class="memproto">
  920. <table class="memname">
  921. <tr>
  922. <td class="memname">void FatFile::fsetpos </td>
  923. <td>(</td>
  924. <td class="paramtype">const fspos_t *&#160;</td>
  925. <td class="paramname"><em>pos</em></td><td>)</td>
  926. <td></td>
  927. </tr>
  928. </table>
  929. </div><div class="memdoc">
  930. <p>set position for streams </p><dl class="params"><dt>Parameters</dt><dd>
  931. <table class="params">
  932. <tr><td class="paramdir">[in]</td><td class="paramname">pos</td><td>struct with value for new position </td></tr>
  933. </table>
  934. </dd>
  935. </dl>
  936. </div>
  937. </div>
  938. <a id="ad0dbbd083180f44c7a3ce7124d4ce19c"></a>
  939. <h2 class="memtitle"><span class="permalink"><a href="#ad0dbbd083180f44c7a3ce7124d4ce19c">&#9670;&nbsp;</a></span>getError()</h2>
  940. <div class="memitem">
  941. <div class="memproto">
  942. <table class="mlabels">
  943. <tr>
  944. <td class="mlabels-left">
  945. <table class="memname">
  946. <tr>
  947. <td class="memname">uint8_t FatFile::getError </td>
  948. <td>(</td>
  949. <td class="paramname"></td><td>)</td>
  950. <td></td>
  951. </tr>
  952. </table>
  953. </td>
  954. <td class="mlabels-right">
  955. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  956. </tr>
  957. </table>
  958. </div><div class="memdoc">
  959. <dl class="section return"><dt>Returns</dt><dd>All error bits. </dd></dl>
  960. </div>
  961. </div>
  962. <a id="aafa565e286440aab612cdb430fc01da5"></a>
  963. <h2 class="memtitle"><span class="permalink"><a href="#aafa565e286440aab612cdb430fc01da5">&#9670;&nbsp;</a></span>getName()</h2>
  964. <div class="memitem">
  965. <div class="memproto">
  966. <table class="memname">
  967. <tr>
  968. <td class="memname">bool FatFile::getName </td>
  969. <td>(</td>
  970. <td class="paramtype">char *&#160;</td>
  971. <td class="paramname"><em>name</em>, </td>
  972. </tr>
  973. <tr>
  974. <td class="paramkey"></td>
  975. <td></td>
  976. <td class="paramtype">size_t&#160;</td>
  977. <td class="paramname"><em>size</em>&#160;</td>
  978. </tr>
  979. <tr>
  980. <td></td>
  981. <td>)</td>
  982. <td></td><td></td>
  983. </tr>
  984. </table>
  985. </div><div class="memdoc">
  986. <p>Get a file's name followed by a zero byte.</p>
  987. <dl class="params"><dt>Parameters</dt><dd>
  988. <table class="params">
  989. <tr><td class="paramdir">[out]</td><td class="paramname">name</td><td>An array of characters for the file's name. </td></tr>
  990. <tr><td class="paramdir">[in]</td><td class="paramname">size</td><td>The size of the array in bytes. The array must be at least 13 bytes long. The file's name will be truncated if the file's name is too long. </td></tr>
  991. </table>
  992. </dd>
  993. </dl>
  994. <dl class="section return"><dt>Returns</dt><dd>true for success or false for failure. </dd></dl>
  995. </div>
  996. </div>
  997. <a id="aba30e92a66f8e0d2f815c85662772a58"></a>
  998. <h2 class="memtitle"><span class="permalink"><a href="#aba30e92a66f8e0d2f815c85662772a58">&#9670;&nbsp;</a></span>getSFN()</h2>
  999. <div class="memitem">
  1000. <div class="memproto">
  1001. <table class="memname">
  1002. <tr>
  1003. <td class="memname">bool FatFile::getSFN </td>
  1004. <td>(</td>
  1005. <td class="paramtype">char *&#160;</td>
  1006. <td class="paramname"><em>name</em></td><td>)</td>
  1007. <td></td>
  1008. </tr>
  1009. </table>
  1010. </div><div class="memdoc">
  1011. <p>Get a file's Short File Name followed by a zero byte.</p>
  1012. <dl class="params"><dt>Parameters</dt><dd>
  1013. <table class="params">
  1014. <tr><td class="paramdir">[out]</td><td class="paramname">name</td><td>An array of characters for the file's name. The array must be at least 13 bytes long. </td></tr>
  1015. </table>
  1016. </dd>
  1017. </dl>
  1018. <dl class="section return"><dt>Returns</dt><dd>true for success or false for failure. </dd></dl>
  1019. </div>
  1020. </div>
  1021. <a id="a8062c0d3a118e8d77d0310418703d5f5"></a>
  1022. <h2 class="memtitle"><span class="permalink"><a href="#a8062c0d3a118e8d77d0310418703d5f5">&#9670;&nbsp;</a></span>getWriteError()</h2>
  1023. <div class="memitem">
  1024. <div class="memproto">
  1025. <table class="mlabels">
  1026. <tr>
  1027. <td class="mlabels-left">
  1028. <table class="memname">
  1029. <tr>
  1030. <td class="memname">bool FatFile::getWriteError </td>
  1031. <td>(</td>
  1032. <td class="paramname"></td><td>)</td>
  1033. <td></td>
  1034. </tr>
  1035. </table>
  1036. </td>
  1037. <td class="mlabels-right">
  1038. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  1039. </tr>
  1040. </table>
  1041. </div><div class="memdoc">
  1042. <dl class="section return"><dt>Returns</dt><dd>value of writeError </dd></dl>
  1043. </div>
  1044. </div>
  1045. <a id="a16478eafdb731e867fb627d19091c3ce"></a>
  1046. <h2 class="memtitle"><span class="permalink"><a href="#a16478eafdb731e867fb627d19091c3ce">&#9670;&nbsp;</a></span>isContiguous()</h2>
  1047. <div class="memitem">
  1048. <div class="memproto">
  1049. <table class="mlabels">
  1050. <tr>
  1051. <td class="mlabels-left">
  1052. <table class="memname">
  1053. <tr>
  1054. <td class="memname">bool FatFile::isContiguous </td>
  1055. <td>(</td>
  1056. <td class="paramname"></td><td>)</td>
  1057. <td> const</td>
  1058. </tr>
  1059. </table>
  1060. </td>
  1061. <td class="mlabels-right">
  1062. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  1063. </tr>
  1064. </table>
  1065. </div><div class="memdoc">
  1066. <dl class="section return"><dt>Returns</dt><dd>True if the file is contiguous. </dd></dl>
  1067. </div>
  1068. </div>
  1069. <a id="a933360b20b496421b2bd9ee7a95563a6"></a>
  1070. <h2 class="memtitle"><span class="permalink"><a href="#a933360b20b496421b2bd9ee7a95563a6">&#9670;&nbsp;</a></span>isDir()</h2>
  1071. <div class="memitem">
  1072. <div class="memproto">
  1073. <table class="mlabels">
  1074. <tr>
  1075. <td class="mlabels-left">
  1076. <table class="memname">
  1077. <tr>
  1078. <td class="memname">bool FatFile::isDir </td>
  1079. <td>(</td>
  1080. <td class="paramname"></td><td>)</td>
  1081. <td> const</td>
  1082. </tr>
  1083. </table>
  1084. </td>
  1085. <td class="mlabels-right">
  1086. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  1087. </tr>
  1088. </table>
  1089. </div><div class="memdoc">
  1090. <dl class="section return"><dt>Returns</dt><dd>True if this is a directory. </dd></dl>
  1091. </div>
  1092. </div>
  1093. <a id="acc5a87da1a5c8cb9758bfeaa7ae47b57"></a>
  1094. <h2 class="memtitle"><span class="permalink"><a href="#acc5a87da1a5c8cb9758bfeaa7ae47b57">&#9670;&nbsp;</a></span>isFile()</h2>
  1095. <div class="memitem">
  1096. <div class="memproto">
  1097. <table class="mlabels">
  1098. <tr>
  1099. <td class="mlabels-left">
  1100. <table class="memname">
  1101. <tr>
  1102. <td class="memname">bool FatFile::isFile </td>
  1103. <td>(</td>
  1104. <td class="paramname"></td><td>)</td>
  1105. <td> const</td>
  1106. </tr>
  1107. </table>
  1108. </td>
  1109. <td class="mlabels-right">
  1110. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  1111. </tr>
  1112. </table>
  1113. </div><div class="memdoc">
  1114. <dl class="section return"><dt>Returns</dt><dd>True if this is a normal file. </dd></dl>
  1115. </div>
  1116. </div>
  1117. <a id="ae216b4a2bc44a9cfb88478fa051a1fd8"></a>
  1118. <h2 class="memtitle"><span class="permalink"><a href="#ae216b4a2bc44a9cfb88478fa051a1fd8">&#9670;&nbsp;</a></span>isHidden()</h2>
  1119. <div class="memitem">
  1120. <div class="memproto">
  1121. <table class="mlabels">
  1122. <tr>
  1123. <td class="mlabels-left">
  1124. <table class="memname">
  1125. <tr>
  1126. <td class="memname">bool FatFile::isHidden </td>
  1127. <td>(</td>
  1128. <td class="paramname"></td><td>)</td>
  1129. <td> const</td>
  1130. </tr>
  1131. </table>
  1132. </td>
  1133. <td class="mlabels-right">
  1134. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  1135. </tr>
  1136. </table>
  1137. </div><div class="memdoc">
  1138. <dl class="section return"><dt>Returns</dt><dd>True if this is a hidden file. </dd></dl>
  1139. </div>
  1140. </div>
  1141. <a id="af8f456ab790e818bfdd225cf6ffd40f3"></a>
  1142. <h2 class="memtitle"><span class="permalink"><a href="#af8f456ab790e818bfdd225cf6ffd40f3">&#9670;&nbsp;</a></span>isLFN()</h2>
  1143. <div class="memitem">
  1144. <div class="memproto">
  1145. <table class="mlabels">
  1146. <tr>
  1147. <td class="mlabels-left">
  1148. <table class="memname">
  1149. <tr>
  1150. <td class="memname">bool FatFile::isLFN </td>
  1151. <td>(</td>
  1152. <td class="paramname"></td><td>)</td>
  1153. <td> const</td>
  1154. </tr>
  1155. </table>
  1156. </td>
  1157. <td class="mlabels-right">
  1158. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  1159. </tr>
  1160. </table>
  1161. </div><div class="memdoc">
  1162. <dl class="section return"><dt>Returns</dt><dd>true if this file has a Long File Name. </dd></dl>
  1163. </div>
  1164. </div>
  1165. <a id="a8b8a2850c086d3ce79bee64a23fbf7a6"></a>
  1166. <h2 class="memtitle"><span class="permalink"><a href="#a8b8a2850c086d3ce79bee64a23fbf7a6">&#9670;&nbsp;</a></span>isOpen()</h2>
  1167. <div class="memitem">
  1168. <div class="memproto">
  1169. <table class="mlabels">
  1170. <tr>
  1171. <td class="mlabels-left">
  1172. <table class="memname">
  1173. <tr>
  1174. <td class="memname">bool FatFile::isOpen </td>
  1175. <td>(</td>
  1176. <td class="paramname"></td><td>)</td>
  1177. <td> const</td>
  1178. </tr>
  1179. </table>
  1180. </td>
  1181. <td class="mlabels-right">
  1182. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  1183. </tr>
  1184. </table>
  1185. </div><div class="memdoc">
  1186. <dl class="section return"><dt>Returns</dt><dd>True if this is an open file/directory. </dd></dl>
  1187. </div>
  1188. </div>
  1189. <a id="ae60b4cedb69c88ac641813d5edfa6b4a"></a>
  1190. <h2 class="memtitle"><span class="permalink"><a href="#ae60b4cedb69c88ac641813d5edfa6b4a">&#9670;&nbsp;</a></span>isReadable()</h2>
  1191. <div class="memitem">
  1192. <div class="memproto">
  1193. <table class="mlabels">
  1194. <tr>
  1195. <td class="mlabels-left">
  1196. <table class="memname">
  1197. <tr>
  1198. <td class="memname">bool FatFile::isReadable </td>
  1199. <td>(</td>
  1200. <td class="paramname"></td><td>)</td>
  1201. <td> const</td>
  1202. </tr>
  1203. </table>
  1204. </td>
  1205. <td class="mlabels-right">
  1206. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  1207. </tr>
  1208. </table>
  1209. </div><div class="memdoc">
  1210. <dl class="section return"><dt>Returns</dt><dd>True file is writable. </dd></dl>
  1211. </div>
  1212. </div>
  1213. <a id="abaf639ec8f86f34aeb7e6b3615526f0b"></a>
  1214. <h2 class="memtitle"><span class="permalink"><a href="#abaf639ec8f86f34aeb7e6b3615526f0b">&#9670;&nbsp;</a></span>isReadOnly()</h2>
  1215. <div class="memitem">
  1216. <div class="memproto">
  1217. <table class="mlabels">
  1218. <tr>
  1219. <td class="mlabels-left">
  1220. <table class="memname">
  1221. <tr>
  1222. <td class="memname">bool FatFile::isReadOnly </td>
  1223. <td>(</td>
  1224. <td class="paramname"></td><td>)</td>
  1225. <td> const</td>
  1226. </tr>
  1227. </table>
  1228. </td>
  1229. <td class="mlabels-right">
  1230. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  1231. </tr>
  1232. </table>
  1233. </div><div class="memdoc">
  1234. <dl class="section return"><dt>Returns</dt><dd>True if file is read-only </dd></dl>
  1235. </div>
  1236. </div>
  1237. <a id="a03421a0c28649332f55e6ca06d3aeedb"></a>
  1238. <h2 class="memtitle"><span class="permalink"><a href="#a03421a0c28649332f55e6ca06d3aeedb">&#9670;&nbsp;</a></span>isRoot()</h2>
  1239. <div class="memitem">
  1240. <div class="memproto">
  1241. <table class="mlabels">
  1242. <tr>
  1243. <td class="mlabels-left">
  1244. <table class="memname">
  1245. <tr>
  1246. <td class="memname">bool FatFile::isRoot </td>
  1247. <td>(</td>
  1248. <td class="paramname"></td><td>)</td>
  1249. <td> const</td>
  1250. </tr>
  1251. </table>
  1252. </td>
  1253. <td class="mlabels-right">
  1254. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  1255. </tr>
  1256. </table>
  1257. </div><div class="memdoc">
  1258. <dl class="section return"><dt>Returns</dt><dd>True if this is the root directory. </dd></dl>
  1259. </div>
  1260. </div>
  1261. <a id="a8fda8004720ec4cc55710869dbb52e35"></a>
  1262. <h2 class="memtitle"><span class="permalink"><a href="#a8fda8004720ec4cc55710869dbb52e35">&#9670;&nbsp;</a></span>isRoot32()</h2>
  1263. <div class="memitem">
  1264. <div class="memproto">
  1265. <table class="mlabels">
  1266. <tr>
  1267. <td class="mlabels-left">
  1268. <table class="memname">
  1269. <tr>
  1270. <td class="memname">bool FatFile::isRoot32 </td>
  1271. <td>(</td>
  1272. <td class="paramname"></td><td>)</td>
  1273. <td> const</td>
  1274. </tr>
  1275. </table>
  1276. </td>
  1277. <td class="mlabels-right">
  1278. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  1279. </tr>
  1280. </table>
  1281. </div><div class="memdoc">
  1282. <dl class="section return"><dt>Returns</dt><dd>True if this is the FAT32 root directory. </dd></dl>
  1283. </div>
  1284. </div>
  1285. <a id="a0cc65089f7ce6c1ff92edbf0bff59dee"></a>
  1286. <h2 class="memtitle"><span class="permalink"><a href="#a0cc65089f7ce6c1ff92edbf0bff59dee">&#9670;&nbsp;</a></span>isRootFixed()</h2>
  1287. <div class="memitem">
  1288. <div class="memproto">
  1289. <table class="mlabels">
  1290. <tr>
  1291. <td class="mlabels-left">
  1292. <table class="memname">
  1293. <tr>
  1294. <td class="memname">bool FatFile::isRootFixed </td>
  1295. <td>(</td>
  1296. <td class="paramname"></td><td>)</td>
  1297. <td> const</td>
  1298. </tr>
  1299. </table>
  1300. </td>
  1301. <td class="mlabels-right">
  1302. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  1303. </tr>
  1304. </table>
  1305. </div><div class="memdoc">
  1306. <dl class="section return"><dt>Returns</dt><dd>True if this is the FAT12 of FAT16 root directory. </dd></dl>
  1307. </div>
  1308. </div>
  1309. <a id="abfd02c5d26f7d4f8739a8610116a6660"></a>
  1310. <h2 class="memtitle"><span class="permalink"><a href="#abfd02c5d26f7d4f8739a8610116a6660">&#9670;&nbsp;</a></span>isSubDir()</h2>
  1311. <div class="memitem">
  1312. <div class="memproto">
  1313. <table class="mlabels">
  1314. <tr>
  1315. <td class="mlabels-left">
  1316. <table class="memname">
  1317. <tr>
  1318. <td class="memname">bool FatFile::isSubDir </td>
  1319. <td>(</td>
  1320. <td class="paramname"></td><td>)</td>
  1321. <td> const</td>
  1322. </tr>
  1323. </table>
  1324. </td>
  1325. <td class="mlabels-right">
  1326. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  1327. </tr>
  1328. </table>
  1329. </div><div class="memdoc">
  1330. <dl class="section return"><dt>Returns</dt><dd>True if this is a subdirectory. </dd></dl>
  1331. </div>
  1332. </div>
  1333. <a id="a48087bdeb6b94fc27e0f74c3d90af5a9"></a>
  1334. <h2 class="memtitle"><span class="permalink"><a href="#a48087bdeb6b94fc27e0f74c3d90af5a9">&#9670;&nbsp;</a></span>isSystem()</h2>
  1335. <div class="memitem">
  1336. <div class="memproto">
  1337. <table class="mlabels">
  1338. <tr>
  1339. <td class="mlabels-left">
  1340. <table class="memname">
  1341. <tr>
  1342. <td class="memname">bool FatFile::isSystem </td>
  1343. <td>(</td>
  1344. <td class="paramname"></td><td>)</td>
  1345. <td> const</td>
  1346. </tr>
  1347. </table>
  1348. </td>
  1349. <td class="mlabels-right">
  1350. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  1351. </tr>
  1352. </table>
  1353. </div><div class="memdoc">
  1354. <dl class="section return"><dt>Returns</dt><dd>True if this is a system file. </dd></dl>
  1355. </div>
  1356. </div>
  1357. <a id="aa484d5b2b147c5f3fe0e26b6eaf11ffc"></a>
  1358. <h2 class="memtitle"><span class="permalink"><a href="#aa484d5b2b147c5f3fe0e26b6eaf11ffc">&#9670;&nbsp;</a></span>isWritable()</h2>
  1359. <div class="memitem">
  1360. <div class="memproto">
  1361. <table class="mlabels">
  1362. <tr>
  1363. <td class="mlabels-left">
  1364. <table class="memname">
  1365. <tr>
  1366. <td class="memname">bool FatFile::isWritable </td>
  1367. <td>(</td>
  1368. <td class="paramname"></td><td>)</td>
  1369. <td> const</td>
  1370. </tr>
  1371. </table>
  1372. </td>
  1373. <td class="mlabels-right">
  1374. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  1375. </tr>
  1376. </table>
  1377. </div><div class="memdoc">
  1378. <dl class="section return"><dt>Returns</dt><dd>True file is writable. </dd></dl>
  1379. </div>
  1380. </div>
  1381. <a id="a94df8090f16e9666cdc53ca20f6aff90"></a>
  1382. <h2 class="memtitle"><span class="permalink"><a href="#a94df8090f16e9666cdc53ca20f6aff90">&#9670;&nbsp;</a></span>legal83Char()</h2>
  1383. <div class="memitem">
  1384. <div class="memproto">
  1385. <table class="mlabels">
  1386. <tr>
  1387. <td class="mlabels-left">
  1388. <table class="memname">
  1389. <tr>
  1390. <td class="memname">static bool FatFile::legal83Char </td>
  1391. <td>(</td>
  1392. <td class="paramtype">uint8_t&#160;</td>
  1393. <td class="paramname"><em>c</em></td><td>)</td>
  1394. <td></td>
  1395. </tr>
  1396. </table>
  1397. </td>
  1398. <td class="mlabels-right">
  1399. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  1400. </tr>
  1401. </table>
  1402. </div><div class="memdoc">
  1403. <p>Check for a legal 8.3 character. </p><dl class="params"><dt>Parameters</dt><dd>
  1404. <table class="params">
  1405. <tr><td class="paramdir">[in]</td><td class="paramname">c</td><td>Character to be checked. </td></tr>
  1406. </table>
  1407. </dd>
  1408. </dl>
  1409. <dl class="section return"><dt>Returns</dt><dd>true for a legal 8.3 character. </dd></dl>
  1410. </div>
  1411. </div>
  1412. <a id="a60ab9d16bcc778150a364c26de467de1"></a>
  1413. <h2 class="memtitle"><span class="permalink"><a href="#a60ab9d16bcc778150a364c26de467de1">&#9670;&nbsp;</a></span>ls() <span class="overload">[1/2]</span></h2>
  1414. <div class="memitem">
  1415. <div class="memproto">
  1416. <table class="memname">
  1417. <tr>
  1418. <td class="memname">bool FatFile::ls </td>
  1419. <td>(</td>
  1420. <td class="paramtype"><a class="el" href="_sys_call_8h.html#ac62f6449331cfe1a71f29be30efe7890">print_t</a> *&#160;</td>
  1421. <td class="paramname"><em>pr</em>, </td>
  1422. </tr>
  1423. <tr>
  1424. <td class="paramkey"></td>
  1425. <td></td>
  1426. <td class="paramtype">uint8_t&#160;</td>
  1427. <td class="paramname"><em>flags</em> = <code>0</code>, </td>
  1428. </tr>
  1429. <tr>
  1430. <td class="paramkey"></td>
  1431. <td></td>
  1432. <td class="paramtype">uint8_t&#160;</td>
  1433. <td class="paramname"><em>indent</em> = <code>0</code>&#160;</td>
  1434. </tr>
  1435. <tr>
  1436. <td></td>
  1437. <td>)</td>
  1438. <td></td><td></td>
  1439. </tr>
  1440. </table>
  1441. </div><div class="memdoc">
  1442. <p>List directory contents.</p>
  1443. <dl class="params"><dt>Parameters</dt><dd>
  1444. <table class="params">
  1445. <tr><td class="paramdir">[in]</td><td class="paramname">pr</td><td>Print stream for list.</td></tr>
  1446. <tr><td class="paramdir">[in]</td><td class="paramname">flags</td><td>The inclusive OR of</td></tr>
  1447. </table>
  1448. </dd>
  1449. </dl>
  1450. <p>LS_DATE - Print file modification date</p>
  1451. <p>LS_SIZE - Print file size.</p>
  1452. <p>LS_R - Recursive list of subdirectories.</p>
  1453. <dl class="params"><dt>Parameters</dt><dd>
  1454. <table class="params">
  1455. <tr><td class="paramdir">[in]</td><td class="paramname">indent</td><td>Amount of space before file name. Used for recursive list to indicate subdirectory level.</td></tr>
  1456. </table>
  1457. </dd>
  1458. </dl>
  1459. <dl class="section return"><dt>Returns</dt><dd>true for success or false for failure. </dd></dl>
  1460. </div>
  1461. </div>
  1462. <a id="a6a11f3307da6232b5f2d11812832d93a"></a>
  1463. <h2 class="memtitle"><span class="permalink"><a href="#a6a11f3307da6232b5f2d11812832d93a">&#9670;&nbsp;</a></span>ls() <span class="overload">[2/2]</span></h2>
  1464. <div class="memitem">
  1465. <div class="memproto">
  1466. <table class="mlabels">
  1467. <tr>
  1468. <td class="mlabels-left">
  1469. <table class="memname">
  1470. <tr>
  1471. <td class="memname">bool FatFile::ls </td>
  1472. <td>(</td>
  1473. <td class="paramtype">uint8_t&#160;</td>
  1474. <td class="paramname"><em>flags</em> = <code>0</code></td><td>)</td>
  1475. <td></td>
  1476. </tr>
  1477. </table>
  1478. </td>
  1479. <td class="mlabels-right">
  1480. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  1481. </tr>
  1482. </table>
  1483. </div><div class="memdoc">
  1484. <p>List directory contents.</p>
  1485. <dl class="params"><dt>Parameters</dt><dd>
  1486. <table class="params">
  1487. <tr><td class="paramdir">[in]</td><td class="paramname">flags</td><td>The inclusive OR of</td></tr>
  1488. </table>
  1489. </dd>
  1490. </dl>
  1491. <p>LS_DATE - Print file modification date</p>
  1492. <p>LS_SIZE - Print file size.</p>
  1493. <p>LS_R - Recursive list of subdirectories.</p>
  1494. <dl class="section return"><dt>Returns</dt><dd>true for success or false for failure. </dd></dl>
  1495. </div>
  1496. </div>
  1497. <a id="abab5b9f72cc796388dd4eed01d13d90d"></a>
  1498. <h2 class="memtitle"><span class="permalink"><a href="#abab5b9f72cc796388dd4eed01d13d90d">&#9670;&nbsp;</a></span>mkdir()</h2>
  1499. <div class="memitem">
  1500. <div class="memproto">
  1501. <table class="memname">
  1502. <tr>
  1503. <td class="memname">bool FatFile::mkdir </td>
  1504. <td>(</td>
  1505. <td class="paramtype"><a class="el" href="class_fat_file.html">FatFile</a> *&#160;</td>
  1506. <td class="paramname"><em>dir</em>, </td>
  1507. </tr>
  1508. <tr>
  1509. <td class="paramkey"></td>
  1510. <td></td>
  1511. <td class="paramtype">const char *&#160;</td>
  1512. <td class="paramname"><em>path</em>, </td>
  1513. </tr>
  1514. <tr>
  1515. <td class="paramkey"></td>
  1516. <td></td>
  1517. <td class="paramtype">bool&#160;</td>
  1518. <td class="paramname"><em>pFlag</em> = <code>true</code>&#160;</td>
  1519. </tr>
  1520. <tr>
  1521. <td></td>
  1522. <td>)</td>
  1523. <td></td><td></td>
  1524. </tr>
  1525. </table>
  1526. </div><div class="memdoc">
  1527. <p>Make a new directory.</p>
  1528. <dl class="params"><dt>Parameters</dt><dd>
  1529. <table class="params">
  1530. <tr><td class="paramdir">[in]</td><td class="paramname">dir</td><td>An open <a class="el" href="class_fat_file.html" title="Basic file class. ">FatFile</a> instance for the directory that will contain the new directory.</td></tr>
  1531. <tr><td class="paramdir">[in]</td><td class="paramname">path</td><td>A path with a valid name for the new directory.</td></tr>
  1532. <tr><td class="paramdir">[in]</td><td class="paramname">pFlag</td><td>Create missing parent directories if true.</td></tr>
  1533. </table>
  1534. </dd>
  1535. </dl>
  1536. <dl class="section return"><dt>Returns</dt><dd>true for success or false for failure. </dd></dl>
  1537. </div>
  1538. </div>
  1539. <a id="af49a42dc64cd954debb271eae5639059"></a>
  1540. <h2 class="memtitle"><span class="permalink"><a href="#af49a42dc64cd954debb271eae5639059">&#9670;&nbsp;</a></span>open() <span class="overload">[1/4]</span></h2>
  1541. <div class="memitem">
  1542. <div class="memproto">
  1543. <table class="memname">
  1544. <tr>
  1545. <td class="memname">bool FatFile::open </td>
  1546. <td>(</td>
  1547. <td class="paramtype"><a class="el" href="class_fat_volume.html">FatVolume</a> *&#160;</td>
  1548. <td class="paramname"><em>vol</em>, </td>
  1549. </tr>
  1550. <tr>
  1551. <td class="paramkey"></td>
  1552. <td></td>
  1553. <td class="paramtype">const char *&#160;</td>
  1554. <td class="paramname"><em>path</em>, </td>
  1555. </tr>
  1556. <tr>
  1557. <td class="paramkey"></td>
  1558. <td></td>
  1559. <td class="paramtype">oflag_t&#160;</td>
  1560. <td class="paramname"><em>oflag</em>&#160;</td>
  1561. </tr>
  1562. <tr>
  1563. <td></td>
  1564. <td>)</td>
  1565. <td></td><td></td>
  1566. </tr>
  1567. </table>
  1568. </div><div class="memdoc">
  1569. <p>Open a file in the volume root directory.</p>
  1570. <dl class="params"><dt>Parameters</dt><dd>
  1571. <table class="params">
  1572. <tr><td class="paramdir">[in]</td><td class="paramname">vol</td><td>Volume where the file is located.</td></tr>
  1573. <tr><td class="paramdir">[in]</td><td class="paramname">path</td><td>with a valid name for a file to be opened.</td></tr>
  1574. <tr><td class="paramdir">[in]</td><td class="paramname">oflag</td><td>bitwise-inclusive OR of open flags. See see <a class="el" href="class_fat_file.html#a58d6ea245f1bc3ae7a6df311cd25052f">FatFile::open(FatFile*, const char*, uint8_t)</a>.</td></tr>
  1575. </table>
  1576. </dd>
  1577. </dl>
  1578. <dl class="section return"><dt>Returns</dt><dd>true for success or false for failure. </dd></dl>
  1579. </div>
  1580. </div>
  1581. <a id="ab44920bb9cd5414b8e69c9dc4343394a"></a>
  1582. <h2 class="memtitle"><span class="permalink"><a href="#ab44920bb9cd5414b8e69c9dc4343394a">&#9670;&nbsp;</a></span>open() <span class="overload">[2/4]</span></h2>
  1583. <div class="memitem">
  1584. <div class="memproto">
  1585. <table class="memname">
  1586. <tr>
  1587. <td class="memname">bool FatFile::open </td>
  1588. <td>(</td>
  1589. <td class="paramtype"><a class="el" href="class_fat_file.html">FatFile</a> *&#160;</td>
  1590. <td class="paramname"><em>dirFile</em>, </td>
  1591. </tr>
  1592. <tr>
  1593. <td class="paramkey"></td>
  1594. <td></td>
  1595. <td class="paramtype">uint16_t&#160;</td>
  1596. <td class="paramname"><em>index</em>, </td>
  1597. </tr>
  1598. <tr>
  1599. <td class="paramkey"></td>
  1600. <td></td>
  1601. <td class="paramtype">oflag_t&#160;</td>
  1602. <td class="paramname"><em>oflag</em>&#160;</td>
  1603. </tr>
  1604. <tr>
  1605. <td></td>
  1606. <td>)</td>
  1607. <td></td><td></td>
  1608. </tr>
  1609. </table>
  1610. </div><div class="memdoc">
  1611. <p>Open a file by index.</p>
  1612. <dl class="params"><dt>Parameters</dt><dd>
  1613. <table class="params">
  1614. <tr><td class="paramdir">[in]</td><td class="paramname">dirFile</td><td>An open <a class="el" href="class_fat_file.html" title="Basic file class. ">FatFile</a> instance for the directory.</td></tr>
  1615. <tr><td class="paramdir">[in]</td><td class="paramname">index</td><td>The <em>index</em> of the directory entry for the file to be opened. The value for <em>index</em> is (directory file position)/32.</td></tr>
  1616. <tr><td class="paramdir">[in]</td><td class="paramname">oflag</td><td>bitwise-inclusive OR of open flags. See see <a class="el" href="class_fat_file.html#a58d6ea245f1bc3ae7a6df311cd25052f">FatFile::open(FatFile*, const char*, uint8_t)</a>.</td></tr>
  1617. </table>
  1618. </dd>
  1619. </dl>
  1620. <p>See <a class="el" href="class_fat_file.html#af49a42dc64cd954debb271eae5639059">open()</a> by path for definition of flags. </p><dl class="section return"><dt>Returns</dt><dd>true for success or false for failure. </dd></dl>
  1621. </div>
  1622. </div>
  1623. <a id="a58d6ea245f1bc3ae7a6df311cd25052f"></a>
  1624. <h2 class="memtitle"><span class="permalink"><a href="#a58d6ea245f1bc3ae7a6df311cd25052f">&#9670;&nbsp;</a></span>open() <span class="overload">[3/4]</span></h2>
  1625. <div class="memitem">
  1626. <div class="memproto">
  1627. <table class="memname">
  1628. <tr>
  1629. <td class="memname">bool FatFile::open </td>
  1630. <td>(</td>
  1631. <td class="paramtype"><a class="el" href="class_fat_file.html">FatFile</a> *&#160;</td>
  1632. <td class="paramname"><em>dirFile</em>, </td>
  1633. </tr>
  1634. <tr>
  1635. <td class="paramkey"></td>
  1636. <td></td>
  1637. <td class="paramtype">const char *&#160;</td>
  1638. <td class="paramname"><em>path</em>, </td>
  1639. </tr>
  1640. <tr>
  1641. <td class="paramkey"></td>
  1642. <td></td>
  1643. <td class="paramtype">oflag_t&#160;</td>
  1644. <td class="paramname"><em>oflag</em>&#160;</td>
  1645. </tr>
  1646. <tr>
  1647. <td></td>
  1648. <td>)</td>
  1649. <td></td><td></td>
  1650. </tr>
  1651. </table>
  1652. </div><div class="memdoc">
  1653. <p>Open a file or directory by name.</p>
  1654. <dl class="params"><dt>Parameters</dt><dd>
  1655. <table class="params">
  1656. <tr><td class="paramdir">[in]</td><td class="paramname">dirFile</td><td>An open <a class="el" href="class_fat_file.html" title="Basic file class. ">FatFile</a> instance for the directory containing the file to be opened.</td></tr>
  1657. <tr><td class="paramdir">[in]</td><td class="paramname">path</td><td>A path with a valid name for a file to be opened.</td></tr>
  1658. <tr><td class="paramdir">[in]</td><td class="paramname">oflag</td><td>Values for <em>oflag</em> are constructed by a bitwise-inclusive OR of flags from the following list. Only one of O_RDONLY, O_READ, O_WRONLY, O_WRITE, or O_RDWR is allowed.</td></tr>
  1659. </table>
  1660. </dd>
  1661. </dl>
  1662. <p>O_RDONLY - Open for reading.</p>
  1663. <p>O_READ - Same as O_RDONLY.</p>
  1664. <p>O_WRONLY - Open for writing.</p>
  1665. <p>O_WRITE - Same as O_WRONLY.</p>
  1666. <p>O_RDWR - Open for reading and writing.</p>
  1667. <p>O_APPEND - If set, the file offset shall be set to the end of the file prior to each write.</p>
  1668. <p>O_AT_END - Set the initial position at the end of the file.</p>
  1669. <p>O_CREAT - If the file exists, this flag has no effect except as noted under O_EXCL below. Otherwise, the file shall be created</p>
  1670. <p>O_EXCL - If O_CREAT and O_EXCL are set, <a class="el" href="class_fat_file.html#af49a42dc64cd954debb271eae5639059">open()</a> shall fail if the file exists.</p>
  1671. <p>O_TRUNC - If the file exists and is a regular file, and the file is successfully opened and is not read only, its length shall be truncated to 0.</p>
  1672. <p>WARNING: A given file must not be opened by more than one <a class="el" href="class_fat_file.html" title="Basic file class. ">FatFile</a> object or file corruption may occur.</p>
  1673. <dl class="section note"><dt>Note</dt><dd>Directory files must be opened read only. Write and truncation is not allowed for directory files.</dd></dl>
  1674. <dl class="section return"><dt>Returns</dt><dd>true for success or false for failure. </dd></dl>
  1675. </div>
  1676. </div>
  1677. <a id="afd3e4d5a76b6751ca796fc57f4dd2be4"></a>
  1678. <h2 class="memtitle"><span class="permalink"><a href="#afd3e4d5a76b6751ca796fc57f4dd2be4">&#9670;&nbsp;</a></span>open() <span class="overload">[4/4]</span></h2>
  1679. <div class="memitem">
  1680. <div class="memproto">
  1681. <table class="memname">
  1682. <tr>
  1683. <td class="memname">bool FatFile::open </td>
  1684. <td>(</td>
  1685. <td class="paramtype">const char *&#160;</td>
  1686. <td class="paramname"><em>path</em>, </td>
  1687. </tr>
  1688. <tr>
  1689. <td class="paramkey"></td>
  1690. <td></td>
  1691. <td class="paramtype">oflag_t&#160;</td>
  1692. <td class="paramname"><em>oflag</em> = <code>0X00</code>&#160;</td>
  1693. </tr>
  1694. <tr>
  1695. <td></td>
  1696. <td>)</td>
  1697. <td></td><td></td>
  1698. </tr>
  1699. </table>
  1700. </div><div class="memdoc">
  1701. <p>Open a file in the current working volume.</p>
  1702. <dl class="params"><dt>Parameters</dt><dd>
  1703. <table class="params">
  1704. <tr><td class="paramdir">[in]</td><td class="paramname">path</td><td>A path with a valid name for a file to be opened.</td></tr>
  1705. <tr><td class="paramdir">[in]</td><td class="paramname">oflag</td><td>bitwise-inclusive OR of open flags. See see <a class="el" href="class_fat_file.html#a58d6ea245f1bc3ae7a6df311cd25052f">FatFile::open(FatFile*, const char*, uint8_t)</a>.</td></tr>
  1706. </table>
  1707. </dd>
  1708. </dl>
  1709. <dl class="section return"><dt>Returns</dt><dd>true for success or false for failure. </dd></dl>
  1710. </div>
  1711. </div>
  1712. <a id="a7f98b908a686574efbd7e1d20121ef9a"></a>
  1713. <h2 class="memtitle"><span class="permalink"><a href="#a7f98b908a686574efbd7e1d20121ef9a">&#9670;&nbsp;</a></span>openNext()</h2>
  1714. <div class="memitem">
  1715. <div class="memproto">
  1716. <table class="memname">
  1717. <tr>
  1718. <td class="memname">bool FatFile::openNext </td>
  1719. <td>(</td>
  1720. <td class="paramtype"><a class="el" href="class_fat_file.html">FatFile</a> *&#160;</td>
  1721. <td class="paramname"><em>dirFile</em>, </td>
  1722. </tr>
  1723. <tr>
  1724. <td class="paramkey"></td>
  1725. <td></td>
  1726. <td class="paramtype">oflag_t&#160;</td>
  1727. <td class="paramname"><em>oflag</em> = <code>0X00</code>&#160;</td>
  1728. </tr>
  1729. <tr>
  1730. <td></td>
  1731. <td>)</td>
  1732. <td></td><td></td>
  1733. </tr>
  1734. </table>
  1735. </div><div class="memdoc">
  1736. <p>Open the next file or subdirectory in a directory.</p>
  1737. <dl class="params"><dt>Parameters</dt><dd>
  1738. <table class="params">
  1739. <tr><td class="paramdir">[in]</td><td class="paramname">dirFile</td><td>An open <a class="el" href="class_fat_file.html" title="Basic file class. ">FatFile</a> instance for the directory containing the file to be opened.</td></tr>
  1740. <tr><td class="paramdir">[in]</td><td class="paramname">oflag</td><td>bitwise-inclusive OR of open flags. See see <a class="el" href="class_fat_file.html#a58d6ea245f1bc3ae7a6df311cd25052f">FatFile::open(FatFile*, const char*, uint8_t)</a>.</td></tr>
  1741. </table>
  1742. </dd>
  1743. </dl>
  1744. <dl class="section return"><dt>Returns</dt><dd>true for success or false for failure. </dd></dl>
  1745. </div>
  1746. </div>
  1747. <a id="a7e0c0548fed3a69e7284b91b694439d4"></a>
  1748. <h2 class="memtitle"><span class="permalink"><a href="#a7e0c0548fed3a69e7284b91b694439d4">&#9670;&nbsp;</a></span>openRoot()</h2>
  1749. <div class="memitem">
  1750. <div class="memproto">
  1751. <table class="memname">
  1752. <tr>
  1753. <td class="memname">bool FatFile::openRoot </td>
  1754. <td>(</td>
  1755. <td class="paramtype"><a class="el" href="class_fat_volume.html">FatVolume</a> *&#160;</td>
  1756. <td class="paramname"><em>vol</em></td><td>)</td>
  1757. <td></td>
  1758. </tr>
  1759. </table>
  1760. </div><div class="memdoc">
  1761. <p>Open a volume's root directory.</p>
  1762. <dl class="params"><dt>Parameters</dt><dd>
  1763. <table class="params">
  1764. <tr><td class="paramdir">[in]</td><td class="paramname">vol</td><td>The FAT volume containing the root directory to be opened.</td></tr>
  1765. </table>
  1766. </dd>
  1767. </dl>
  1768. <dl class="section return"><dt>Returns</dt><dd>true for success or false for failure. </dd></dl>
  1769. </div>
  1770. </div>
  1771. <a id="acd141c43d03cf790b3b9806f3b059e77"></a>
  1772. <h2 class="memtitle"><span class="permalink"><a href="#acd141c43d03cf790b3b9806f3b059e77">&#9670;&nbsp;</a></span>operator bool()</h2>
  1773. <div class="memitem">
  1774. <div class="memproto">
  1775. <table class="mlabels">
  1776. <tr>
  1777. <td class="mlabels-left">
  1778. <table class="memname">
  1779. <tr>
  1780. <td class="memname">FatFile::operator bool </td>
  1781. <td>(</td>
  1782. <td class="paramname"></td><td>)</td>
  1783. <td></td>
  1784. </tr>
  1785. </table>
  1786. </td>
  1787. <td class="mlabels-right">
  1788. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  1789. </tr>
  1790. </table>
  1791. </div><div class="memdoc">
  1792. <p>The parenthesis operator.</p>
  1793. <dl class="section return"><dt>Returns</dt><dd>true if a file is open. </dd></dl>
  1794. </div>
  1795. </div>
  1796. <a id="ac05b7136b887539426856c623869aa3a"></a>
  1797. <h2 class="memtitle"><span class="permalink"><a href="#ac05b7136b887539426856c623869aa3a">&#9670;&nbsp;</a></span>peek()</h2>
  1798. <div class="memitem">
  1799. <div class="memproto">
  1800. <table class="memname">
  1801. <tr>
  1802. <td class="memname">int FatFile::peek </td>
  1803. <td>(</td>
  1804. <td class="paramname"></td><td>)</td>
  1805. <td></td>
  1806. </tr>
  1807. </table>
  1808. </div><div class="memdoc">
  1809. <p>Return the next available byte without consuming it.</p>
  1810. <dl class="section return"><dt>Returns</dt><dd>The byte if no error and not at eof else -1; </dd></dl>
  1811. </div>
  1812. </div>
  1813. <a id="aeeb13b9de68bf9097c863c41d655ee83"></a>
  1814. <h2 class="memtitle"><span class="permalink"><a href="#aeeb13b9de68bf9097c863c41d655ee83">&#9670;&nbsp;</a></span>preAllocate()</h2>
  1815. <div class="memitem">
  1816. <div class="memproto">
  1817. <table class="memname">
  1818. <tr>
  1819. <td class="memname">bool FatFile::preAllocate </td>
  1820. <td>(</td>
  1821. <td class="paramtype">uint32_t&#160;</td>
  1822. <td class="paramname"><em>length</em></td><td>)</td>
  1823. <td></td>
  1824. </tr>
  1825. </table>
  1826. </div><div class="memdoc">
  1827. <p>Allocate contiguous clusters to an empty file.</p>
  1828. <p>The file must be empty with no clusters allocated.</p>
  1829. <p>The file will contain uninitialized data.</p>
  1830. <dl class="params"><dt>Parameters</dt><dd>
  1831. <table class="params">
  1832. <tr><td class="paramdir">[in]</td><td class="paramname">length</td><td>size of the file in bytes. </td></tr>
  1833. </table>
  1834. </dd>
  1835. </dl>
  1836. <dl class="section return"><dt>Returns</dt><dd>true for success or false for failure. </dd></dl>
  1837. </div>
  1838. </div>
  1839. <a id="a22be4c339d0bfa331f75415b74dd4f37"></a>
  1840. <h2 class="memtitle"><span class="permalink"><a href="#a22be4c339d0bfa331f75415b74dd4f37">&#9670;&nbsp;</a></span>printAccessDate()</h2>
  1841. <div class="memitem">
  1842. <div class="memproto">
  1843. <table class="memname">
  1844. <tr>
  1845. <td class="memname">size_t FatFile::printAccessDate </td>
  1846. <td>(</td>
  1847. <td class="paramtype"><a class="el" href="_sys_call_8h.html#ac62f6449331cfe1a71f29be30efe7890">print_t</a> *&#160;</td>
  1848. <td class="paramname"><em>pr</em></td><td>)</td>
  1849. <td></td>
  1850. </tr>
  1851. </table>
  1852. </div><div class="memdoc">
  1853. <p>Print a file's access date</p>
  1854. <dl class="params"><dt>Parameters</dt><dd>
  1855. <table class="params">
  1856. <tr><td class="paramdir">[in]</td><td class="paramname">pr</td><td>Print stream for output.</td></tr>
  1857. </table>
  1858. </dd>
  1859. </dl>
  1860. <dl class="section return"><dt>Returns</dt><dd>The number of characters printed. </dd></dl>
  1861. </div>
  1862. </div>
  1863. <a id="a19b3196bb1f6a68a2447e53b09369aef"></a>
  1864. <h2 class="memtitle"><span class="permalink"><a href="#a19b3196bb1f6a68a2447e53b09369aef">&#9670;&nbsp;</a></span>printAccessDateTime()</h2>
  1865. <div class="memitem">
  1866. <div class="memproto">
  1867. <table class="mlabels">
  1868. <tr>
  1869. <td class="mlabels-left">
  1870. <table class="memname">
  1871. <tr>
  1872. <td class="memname">size_t FatFile::printAccessDateTime </td>
  1873. <td>(</td>
  1874. <td class="paramtype"><a class="el" href="_sys_call_8h.html#ac62f6449331cfe1a71f29be30efe7890">print_t</a> *&#160;</td>
  1875. <td class="paramname"><em>pr</em></td><td>)</td>
  1876. <td></td>
  1877. </tr>
  1878. </table>
  1879. </td>
  1880. <td class="mlabels-right">
  1881. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  1882. </tr>
  1883. </table>
  1884. </div><div class="memdoc">
  1885. <p>Print a file's access date</p>
  1886. <dl class="params"><dt>Parameters</dt><dd>
  1887. <table class="params">
  1888. <tr><td class="paramdir">[in]</td><td class="paramname">pr</td><td>Print stream for output.</td></tr>
  1889. </table>
  1890. </dd>
  1891. </dl>
  1892. <dl class="section return"><dt>Returns</dt><dd>The number of characters printed. </dd></dl>
  1893. </div>
  1894. </div>
  1895. <a id="ab22396a285e27b53501a0047ddd97f59"></a>
  1896. <h2 class="memtitle"><span class="permalink"><a href="#ab22396a285e27b53501a0047ddd97f59">&#9670;&nbsp;</a></span>printCreateDateTime()</h2>
  1897. <div class="memitem">
  1898. <div class="memproto">
  1899. <table class="memname">
  1900. <tr>
  1901. <td class="memname">size_t FatFile::printCreateDateTime </td>
  1902. <td>(</td>
  1903. <td class="paramtype"><a class="el" href="_sys_call_8h.html#ac62f6449331cfe1a71f29be30efe7890">print_t</a> *&#160;</td>
  1904. <td class="paramname"><em>pr</em></td><td>)</td>
  1905. <td></td>
  1906. </tr>
  1907. </table>
  1908. </div><div class="memdoc">
  1909. <p>Print a file's creation date and time</p>
  1910. <dl class="params"><dt>Parameters</dt><dd>
  1911. <table class="params">
  1912. <tr><td class="paramdir">[in]</td><td class="paramname">pr</td><td>Print stream for output.</td></tr>
  1913. </table>
  1914. </dd>
  1915. </dl>
  1916. <dl class="section return"><dt>Returns</dt><dd>The number of bytes printed. </dd></dl>
  1917. </div>
  1918. </div>
  1919. <a id="aabcd863883bfcfb37b63dbd6021f7eb8"></a>
  1920. <h2 class="memtitle"><span class="permalink"><a href="#aabcd863883bfcfb37b63dbd6021f7eb8">&#9670;&nbsp;</a></span>printFatDate()</h2>
  1921. <div class="memitem">
  1922. <div class="memproto">
  1923. <table class="mlabels">
  1924. <tr>
  1925. <td class="mlabels-left">
  1926. <table class="memname">
  1927. <tr>
  1928. <td class="memname">static void FatFile::printFatDate </td>
  1929. <td>(</td>
  1930. <td class="paramtype"><a class="el" href="_sys_call_8h.html#ac62f6449331cfe1a71f29be30efe7890">print_t</a> *&#160;</td>
  1931. <td class="paramname"><em>pr</em>, </td>
  1932. </tr>
  1933. <tr>
  1934. <td class="paramkey"></td>
  1935. <td></td>
  1936. <td class="paramtype">uint16_t&#160;</td>
  1937. <td class="paramname"><em>fatDate</em>&#160;</td>
  1938. </tr>
  1939. <tr>
  1940. <td></td>
  1941. <td>)</td>
  1942. <td></td><td></td>
  1943. </tr>
  1944. </table>
  1945. </td>
  1946. <td class="mlabels-right">
  1947. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  1948. </tr>
  1949. </table>
  1950. </div><div class="memdoc">
  1951. <p>Print a directory date field.</p>
  1952. <p>Format is yyyy-mm-dd.</p>
  1953. <dl class="params"><dt>Parameters</dt><dd>
  1954. <table class="params">
  1955. <tr><td class="paramdir">[in]</td><td class="paramname">pr</td><td>Print stream for output. </td></tr>
  1956. <tr><td class="paramdir">[in]</td><td class="paramname">fatDate</td><td>The date field from a directory entry. </td></tr>
  1957. </table>
  1958. </dd>
  1959. </dl>
  1960. </div>
  1961. </div>
  1962. <a id="a7f84d953190ea94710dad9ebb897b957"></a>
  1963. <h2 class="memtitle"><span class="permalink"><a href="#a7f84d953190ea94710dad9ebb897b957">&#9670;&nbsp;</a></span>printFatTime()</h2>
  1964. <div class="memitem">
  1965. <div class="memproto">
  1966. <table class="mlabels">
  1967. <tr>
  1968. <td class="mlabels-left">
  1969. <table class="memname">
  1970. <tr>
  1971. <td class="memname">static void FatFile::printFatTime </td>
  1972. <td>(</td>
  1973. <td class="paramtype"><a class="el" href="_sys_call_8h.html#ac62f6449331cfe1a71f29be30efe7890">print_t</a> *&#160;</td>
  1974. <td class="paramname"><em>pr</em>, </td>
  1975. </tr>
  1976. <tr>
  1977. <td class="paramkey"></td>
  1978. <td></td>
  1979. <td class="paramtype">uint16_t&#160;</td>
  1980. <td class="paramname"><em>fatTime</em>&#160;</td>
  1981. </tr>
  1982. <tr>
  1983. <td></td>
  1984. <td>)</td>
  1985. <td></td><td></td>
  1986. </tr>
  1987. </table>
  1988. </td>
  1989. <td class="mlabels-right">
  1990. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  1991. </tr>
  1992. </table>
  1993. </div><div class="memdoc">
  1994. <p>Print a directory time field.</p>
  1995. <p>Format is hh:mm:ss.</p>
  1996. <dl class="params"><dt>Parameters</dt><dd>
  1997. <table class="params">
  1998. <tr><td class="paramdir">[in]</td><td class="paramname">pr</td><td>Print stream for output. </td></tr>
  1999. <tr><td class="paramdir">[in]</td><td class="paramname">fatTime</td><td>The time field from a directory entry. </td></tr>
  2000. </table>
  2001. </dd>
  2002. </dl>
  2003. </div>
  2004. </div>
  2005. <a id="aa4a61a0cca1813d2ad0f6fe99cc4e41d"></a>
  2006. <h2 class="memtitle"><span class="permalink"><a href="#aa4a61a0cca1813d2ad0f6fe99cc4e41d">&#9670;&nbsp;</a></span>printField() <span class="overload">[1/3]</span></h2>
  2007. <div class="memitem">
  2008. <div class="memproto">
  2009. <table class="mlabels">
  2010. <tr>
  2011. <td class="mlabels-left">
  2012. <table class="memname">
  2013. <tr>
  2014. <td class="memname">size_t FatFile::printField </td>
  2015. <td>(</td>
  2016. <td class="paramtype">double&#160;</td>
  2017. <td class="paramname"><em>value</em>, </td>
  2018. </tr>
  2019. <tr>
  2020. <td class="paramkey"></td>
  2021. <td></td>
  2022. <td class="paramtype">char&#160;</td>
  2023. <td class="paramname"><em>term</em>, </td>
  2024. </tr>
  2025. <tr>
  2026. <td class="paramkey"></td>
  2027. <td></td>
  2028. <td class="paramtype">uint8_t&#160;</td>
  2029. <td class="paramname"><em>prec</em> = <code>2</code>&#160;</td>
  2030. </tr>
  2031. <tr>
  2032. <td></td>
  2033. <td>)</td>
  2034. <td></td><td></td>
  2035. </tr>
  2036. </table>
  2037. </td>
  2038. <td class="mlabels-right">
  2039. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  2040. </tr>
  2041. </table>
  2042. </div><div class="memdoc">
  2043. <p>Print a number followed by a field terminator. </p><dl class="params"><dt>Parameters</dt><dd>
  2044. <table class="params">
  2045. <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>The number to be printed. </td></tr>
  2046. <tr><td class="paramdir">[in]</td><td class="paramname">term</td><td>The field terminator. Use '\n' for CR LF. </td></tr>
  2047. <tr><td class="paramdir">[in]</td><td class="paramname">prec</td><td>Number of digits after decimal point. </td></tr>
  2048. </table>
  2049. </dd>
  2050. </dl>
  2051. <dl class="section return"><dt>Returns</dt><dd>The number of bytes written or -1 if an error occurs. </dd></dl>
  2052. </div>
  2053. </div>
  2054. <a id="a90ccef676afd62bbe7c773dd863a56e0"></a>
  2055. <h2 class="memtitle"><span class="permalink"><a href="#a90ccef676afd62bbe7c773dd863a56e0">&#9670;&nbsp;</a></span>printField() <span class="overload">[2/3]</span></h2>
  2056. <div class="memitem">
  2057. <div class="memproto">
  2058. <table class="mlabels">
  2059. <tr>
  2060. <td class="mlabels-left">
  2061. <table class="memname">
  2062. <tr>
  2063. <td class="memname">size_t FatFile::printField </td>
  2064. <td>(</td>
  2065. <td class="paramtype">float&#160;</td>
  2066. <td class="paramname"><em>value</em>, </td>
  2067. </tr>
  2068. <tr>
  2069. <td class="paramkey"></td>
  2070. <td></td>
  2071. <td class="paramtype">char&#160;</td>
  2072. <td class="paramname"><em>term</em>, </td>
  2073. </tr>
  2074. <tr>
  2075. <td class="paramkey"></td>
  2076. <td></td>
  2077. <td class="paramtype">uint8_t&#160;</td>
  2078. <td class="paramname"><em>prec</em> = <code>2</code>&#160;</td>
  2079. </tr>
  2080. <tr>
  2081. <td></td>
  2082. <td>)</td>
  2083. <td></td><td></td>
  2084. </tr>
  2085. </table>
  2086. </td>
  2087. <td class="mlabels-right">
  2088. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  2089. </tr>
  2090. </table>
  2091. </div><div class="memdoc">
  2092. <p>Print a number followed by a field terminator. </p><dl class="params"><dt>Parameters</dt><dd>
  2093. <table class="params">
  2094. <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>The number to be printed. </td></tr>
  2095. <tr><td class="paramdir">[in]</td><td class="paramname">term</td><td>The field terminator. Use '\n' for CR LF. </td></tr>
  2096. <tr><td class="paramdir">[in]</td><td class="paramname">prec</td><td>Number of digits after decimal point. </td></tr>
  2097. </table>
  2098. </dd>
  2099. </dl>
  2100. <dl class="section return"><dt>Returns</dt><dd>The number of bytes written or -1 if an error occurs. </dd></dl>
  2101. </div>
  2102. </div>
  2103. <a id="a8f906be79086f38943cb0911310d67bf"></a>
  2104. <h2 class="memtitle"><span class="permalink"><a href="#a8f906be79086f38943cb0911310d67bf">&#9670;&nbsp;</a></span>printField() <span class="overload">[3/3]</span></h2>
  2105. <div class="memitem">
  2106. <div class="memproto">
  2107. <div class="memtemplate">
  2108. template&lt;typename Type &gt; </div>
  2109. <table class="mlabels">
  2110. <tr>
  2111. <td class="mlabels-left">
  2112. <table class="memname">
  2113. <tr>
  2114. <td class="memname">size_t FatFile::printField </td>
  2115. <td>(</td>
  2116. <td class="paramtype">Type&#160;</td>
  2117. <td class="paramname"><em>value</em>, </td>
  2118. </tr>
  2119. <tr>
  2120. <td class="paramkey"></td>
  2121. <td></td>
  2122. <td class="paramtype">char&#160;</td>
  2123. <td class="paramname"><em>term</em>&#160;</td>
  2124. </tr>
  2125. <tr>
  2126. <td></td>
  2127. <td>)</td>
  2128. <td></td><td></td>
  2129. </tr>
  2130. </table>
  2131. </td>
  2132. <td class="mlabels-right">
  2133. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  2134. </tr>
  2135. </table>
  2136. </div><div class="memdoc">
  2137. <p>Print a number followed by a field terminator. </p><dl class="params"><dt>Parameters</dt><dd>
  2138. <table class="params">
  2139. <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>The number to be printed. </td></tr>
  2140. <tr><td class="paramdir">[in]</td><td class="paramname">term</td><td>The field terminator. Use '\n' for CR LF. </td></tr>
  2141. </table>
  2142. </dd>
  2143. </dl>
  2144. <dl class="section return"><dt>Returns</dt><dd>The number of bytes written or -1 if an error occurs. </dd></dl>
  2145. </div>
  2146. </div>
  2147. <a id="a12a5d2de2737c201aa39ca1bd2ab9c47"></a>
  2148. <h2 class="memtitle"><span class="permalink"><a href="#a12a5d2de2737c201aa39ca1bd2ab9c47">&#9670;&nbsp;</a></span>printFileSize()</h2>
  2149. <div class="memitem">
  2150. <div class="memproto">
  2151. <table class="memname">
  2152. <tr>
  2153. <td class="memname">size_t FatFile::printFileSize </td>
  2154. <td>(</td>
  2155. <td class="paramtype"><a class="el" href="_sys_call_8h.html#ac62f6449331cfe1a71f29be30efe7890">print_t</a> *&#160;</td>
  2156. <td class="paramname"><em>pr</em></td><td>)</td>
  2157. <td></td>
  2158. </tr>
  2159. </table>
  2160. </div><div class="memdoc">
  2161. <p>Print a file's size.</p>
  2162. <dl class="params"><dt>Parameters</dt><dd>
  2163. <table class="params">
  2164. <tr><td class="paramdir">[in]</td><td class="paramname">pr</td><td>Print stream for output.</td></tr>
  2165. </table>
  2166. </dd>
  2167. </dl>
  2168. <dl class="section return"><dt>Returns</dt><dd>The number of characters printed is returned for success and zero is returned for failure. </dd></dl>
  2169. </div>
  2170. </div>
  2171. <a id="a43c8a1cabcae673e43c590f5db44c65a"></a>
  2172. <h2 class="memtitle"><span class="permalink"><a href="#a43c8a1cabcae673e43c590f5db44c65a">&#9670;&nbsp;</a></span>printModifyDateTime()</h2>
  2173. <div class="memitem">
  2174. <div class="memproto">
  2175. <table class="memname">
  2176. <tr>
  2177. <td class="memname">size_t FatFile::printModifyDateTime </td>
  2178. <td>(</td>
  2179. <td class="paramtype"><a class="el" href="_sys_call_8h.html#ac62f6449331cfe1a71f29be30efe7890">print_t</a> *&#160;</td>
  2180. <td class="paramname"><em>pr</em></td><td>)</td>
  2181. <td></td>
  2182. </tr>
  2183. </table>
  2184. </div><div class="memdoc">
  2185. <p>Print a file's modify date and time</p>
  2186. <dl class="params"><dt>Parameters</dt><dd>
  2187. <table class="params">
  2188. <tr><td class="paramdir">[in]</td><td class="paramname">pr</td><td>Print stream for output.</td></tr>
  2189. </table>
  2190. </dd>
  2191. </dl>
  2192. <dl class="section return"><dt>Returns</dt><dd>The number of characters printed. </dd></dl>
  2193. </div>
  2194. </div>
  2195. <a id="afe18a787fb8640e2d2483370c770f82f"></a>
  2196. <h2 class="memtitle"><span class="permalink"><a href="#afe18a787fb8640e2d2483370c770f82f">&#9670;&nbsp;</a></span>printName() <span class="overload">[1/2]</span></h2>
  2197. <div class="memitem">
  2198. <div class="memproto">
  2199. <table class="memname">
  2200. <tr>
  2201. <td class="memname">size_t FatFile::printName </td>
  2202. <td>(</td>
  2203. <td class="paramtype"><a class="el" href="_sys_call_8h.html#ac62f6449331cfe1a71f29be30efe7890">print_t</a> *&#160;</td>
  2204. <td class="paramname"><em>pr</em></td><td>)</td>
  2205. <td></td>
  2206. </tr>
  2207. </table>
  2208. </div><div class="memdoc">
  2209. <p>Print a file's name</p>
  2210. <dl class="params"><dt>Parameters</dt><dd>
  2211. <table class="params">
  2212. <tr><td class="paramdir">[in]</td><td class="paramname">pr</td><td>Print stream for output.</td></tr>
  2213. </table>
  2214. </dd>
  2215. </dl>
  2216. <dl class="section return"><dt>Returns</dt><dd>true for success or false for failure. </dd></dl>
  2217. </div>
  2218. </div>
  2219. <a id="ad1cbc3aeb0f5193b7a26595966da9621"></a>
  2220. <h2 class="memtitle"><span class="permalink"><a href="#ad1cbc3aeb0f5193b7a26595966da9621">&#9670;&nbsp;</a></span>printName() <span class="overload">[2/2]</span></h2>
  2221. <div class="memitem">
  2222. <div class="memproto">
  2223. <table class="mlabels">
  2224. <tr>
  2225. <td class="mlabels-left">
  2226. <table class="memname">
  2227. <tr>
  2228. <td class="memname">size_t FatFile::printName </td>
  2229. <td>(</td>
  2230. <td class="paramname"></td><td>)</td>
  2231. <td></td>
  2232. </tr>
  2233. </table>
  2234. </td>
  2235. <td class="mlabels-right">
  2236. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  2237. </tr>
  2238. </table>
  2239. </div><div class="memdoc">
  2240. <p>Print a file's name.</p>
  2241. <dl class="section return"><dt>Returns</dt><dd>true for success or false for failure. </dd></dl>
  2242. </div>
  2243. </div>
  2244. <a id="a791cd7aade71f609aab62ec018aea3c0"></a>
  2245. <h2 class="memtitle"><span class="permalink"><a href="#a791cd7aade71f609aab62ec018aea3c0">&#9670;&nbsp;</a></span>printSFN()</h2>
  2246. <div class="memitem">
  2247. <div class="memproto">
  2248. <table class="memname">
  2249. <tr>
  2250. <td class="memname">size_t FatFile::printSFN </td>
  2251. <td>(</td>
  2252. <td class="paramtype"><a class="el" href="_sys_call_8h.html#ac62f6449331cfe1a71f29be30efe7890">print_t</a> *&#160;</td>
  2253. <td class="paramname"><em>pr</em></td><td>)</td>
  2254. <td></td>
  2255. </tr>
  2256. </table>
  2257. </div><div class="memdoc">
  2258. <p>Print a file's Short File Name.</p>
  2259. <dl class="params"><dt>Parameters</dt><dd>
  2260. <table class="params">
  2261. <tr><td class="paramdir">[in]</td><td class="paramname">pr</td><td>Print stream for output.</td></tr>
  2262. </table>
  2263. </dd>
  2264. </dl>
  2265. <dl class="section return"><dt>Returns</dt><dd>The number of characters printed is returned for success and zero is returned for failure. </dd></dl>
  2266. </div>
  2267. </div>
  2268. <a id="a60ae55ff6fe158c2340071d702a363c5"></a>
  2269. <h2 class="memtitle"><span class="permalink"><a href="#a60ae55ff6fe158c2340071d702a363c5">&#9670;&nbsp;</a></span>read() <span class="overload">[1/2]</span></h2>
  2270. <div class="memitem">
  2271. <div class="memproto">
  2272. <table class="mlabels">
  2273. <tr>
  2274. <td class="mlabels-left">
  2275. <table class="memname">
  2276. <tr>
  2277. <td class="memname">int FatFile::read </td>
  2278. <td>(</td>
  2279. <td class="paramname"></td><td>)</td>
  2280. <td></td>
  2281. </tr>
  2282. </table>
  2283. </td>
  2284. <td class="mlabels-right">
  2285. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  2286. </tr>
  2287. </table>
  2288. </div><div class="memdoc">
  2289. <p>Read the next byte from a file.</p>
  2290. <dl class="section return"><dt>Returns</dt><dd>For success read returns the next byte in the file as an int. If an error occurs or end of file is reached -1 is returned. </dd></dl>
  2291. </div>
  2292. </div>
  2293. <a id="aba893af8107a18017482d2311b066187"></a>
  2294. <h2 class="memtitle"><span class="permalink"><a href="#aba893af8107a18017482d2311b066187">&#9670;&nbsp;</a></span>read() <span class="overload">[2/2]</span></h2>
  2295. <div class="memitem">
  2296. <div class="memproto">
  2297. <table class="memname">
  2298. <tr>
  2299. <td class="memname">int FatFile::read </td>
  2300. <td>(</td>
  2301. <td class="paramtype">void *&#160;</td>
  2302. <td class="paramname"><em>buf</em>, </td>
  2303. </tr>
  2304. <tr>
  2305. <td class="paramkey"></td>
  2306. <td></td>
  2307. <td class="paramtype">size_t&#160;</td>
  2308. <td class="paramname"><em>count</em>&#160;</td>
  2309. </tr>
  2310. <tr>
  2311. <td></td>
  2312. <td>)</td>
  2313. <td></td><td></td>
  2314. </tr>
  2315. </table>
  2316. </div><div class="memdoc">
  2317. <p>Read data from a file starting at the current position.</p>
  2318. <dl class="params"><dt>Parameters</dt><dd>
  2319. <table class="params">
  2320. <tr><td class="paramdir">[out]</td><td class="paramname">buf</td><td>Pointer to the location that will receive the data.</td></tr>
  2321. <tr><td class="paramdir">[in]</td><td class="paramname">count</td><td>Maximum number of bytes to read.</td></tr>
  2322. </table>
  2323. </dd>
  2324. </dl>
  2325. <dl class="section return"><dt>Returns</dt><dd>For success <a class="el" href="class_fat_file.html#a60ae55ff6fe158c2340071d702a363c5">read()</a> returns the number of bytes read. A value less than <em>nbyte</em>, including zero, will be returned if end of file is reached. If an error occurs, <a class="el" href="class_fat_file.html#a60ae55ff6fe158c2340071d702a363c5">read()</a> returns -1. </dd></dl>
  2326. </div>
  2327. </div>
  2328. <a id="a29502cd34ef186763d2196daef27df1f"></a>
  2329. <h2 class="memtitle"><span class="permalink"><a href="#a29502cd34ef186763d2196daef27df1f">&#9670;&nbsp;</a></span>readDir()</h2>
  2330. <div class="memitem">
  2331. <div class="memproto">
  2332. <table class="memname">
  2333. <tr>
  2334. <td class="memname">int8_t FatFile::readDir </td>
  2335. <td>(</td>
  2336. <td class="paramtype">DirFat_t *&#160;</td>
  2337. <td class="paramname"><em>dir</em></td><td>)</td>
  2338. <td></td>
  2339. </tr>
  2340. </table>
  2341. </div><div class="memdoc">
  2342. <p>Read the next directory entry from a directory file.</p>
  2343. <dl class="params"><dt>Parameters</dt><dd>
  2344. <table class="params">
  2345. <tr><td class="paramdir">[out]</td><td class="paramname">dir</td><td>The DirFat_t struct that will receive the data.</td></tr>
  2346. </table>
  2347. </dd>
  2348. </dl>
  2349. <dl class="section return"><dt>Returns</dt><dd>For success <a class="el" href="class_fat_file.html#a29502cd34ef186763d2196daef27df1f">readDir()</a> returns the number of bytes read. A value of zero will be returned if end of file is reached. If an error occurs, <a class="el" href="class_fat_file.html#a29502cd34ef186763d2196daef27df1f">readDir()</a> returns -1. Possible errors include <a class="el" href="class_fat_file.html#a29502cd34ef186763d2196daef27df1f">readDir()</a> called before a directory has been opened, this is not a directory file or an I/O error occurred. </dd></dl>
  2350. </div>
  2351. </div>
  2352. <a id="ac837a537fbcca14c7aa390c5fc9f4e7c"></a>
  2353. <h2 class="memtitle"><span class="permalink"><a href="#ac837a537fbcca14c7aa390c5fc9f4e7c">&#9670;&nbsp;</a></span>remove() <span class="overload">[1/2]</span></h2>
  2354. <div class="memitem">
  2355. <div class="memproto">
  2356. <table class="memname">
  2357. <tr>
  2358. <td class="memname">bool FatFile::remove </td>
  2359. <td>(</td>
  2360. <td class="paramname"></td><td>)</td>
  2361. <td></td>
  2362. </tr>
  2363. </table>
  2364. </div><div class="memdoc">
  2365. <p>Remove a file.</p>
  2366. <p>The directory entry and all data for the file are deleted.</p>
  2367. <dl class="section note"><dt>Note</dt><dd>This function should not be used to delete the 8.3 version of a file that has a long name. For example if a file has the long name "New Text Document.txt" you should not delete the 8.3 name "NEWTEX~1.TXT".</dd></dl>
  2368. <dl class="section return"><dt>Returns</dt><dd>true for success or false for failure. </dd></dl>
  2369. </div>
  2370. </div>
  2371. <a id="a75d3276f0b02b03e863afafe5731fedb"></a>
  2372. <h2 class="memtitle"><span class="permalink"><a href="#a75d3276f0b02b03e863afafe5731fedb">&#9670;&nbsp;</a></span>remove() <span class="overload">[2/2]</span></h2>
  2373. <div class="memitem">
  2374. <div class="memproto">
  2375. <table class="memname">
  2376. <tr>
  2377. <td class="memname">bool FatFile::remove </td>
  2378. <td>(</td>
  2379. <td class="paramtype">const char *&#160;</td>
  2380. <td class="paramname"><em>path</em></td><td>)</td>
  2381. <td></td>
  2382. </tr>
  2383. </table>
  2384. </div><div class="memdoc">
  2385. <p>Remove a file.</p>
  2386. <p>The directory entry and all data for the file are deleted.</p>
  2387. <dl class="params"><dt>Parameters</dt><dd>
  2388. <table class="params">
  2389. <tr><td class="paramdir">[in]</td><td class="paramname">path</td><td>Path for the file to be removed.</td></tr>
  2390. </table>
  2391. </dd>
  2392. </dl>
  2393. <p>Example use: dirFile.remove(filenameToRemove);</p>
  2394. <dl class="section note"><dt>Note</dt><dd>This function should not be used to delete the 8.3 version of a file that has a long name. For example if a file has the long name "New Text Document.txt" you should not delete the 8.3 name "NEWTEX~1.TXT".</dd></dl>
  2395. <dl class="section return"><dt>Returns</dt><dd>true for success or false for failure. </dd></dl>
  2396. </div>
  2397. </div>
  2398. <a id="a4cebcac13c1f4c9de7a055ae73133599"></a>
  2399. <h2 class="memtitle"><span class="permalink"><a href="#a4cebcac13c1f4c9de7a055ae73133599">&#9670;&nbsp;</a></span>rename() <span class="overload">[1/2]</span></h2>
  2400. <div class="memitem">
  2401. <div class="memproto">
  2402. <table class="memname">
  2403. <tr>
  2404. <td class="memname">bool FatFile::rename </td>
  2405. <td>(</td>
  2406. <td class="paramtype">const char *&#160;</td>
  2407. <td class="paramname"><em>newPath</em></td><td>)</td>
  2408. <td></td>
  2409. </tr>
  2410. </table>
  2411. </div><div class="memdoc">
  2412. <p>Rename a file or subdirectory. </p><dl class="section note"><dt>Note</dt><dd>the renamed file will be moved to the current volume working directory.</dd></dl>
  2413. <dl class="params"><dt>Parameters</dt><dd>
  2414. <table class="params">
  2415. <tr><td class="paramdir">[in]</td><td class="paramname">newPath</td><td>New path name for the file/directory.</td></tr>
  2416. </table>
  2417. </dd>
  2418. </dl>
  2419. <dl class="section return"><dt>Returns</dt><dd>true for success or false for failure. </dd></dl>
  2420. </div>
  2421. </div>
  2422. <a id="a4b42f2454ff462555c07ea094a92a1e0"></a>
  2423. <h2 class="memtitle"><span class="permalink"><a href="#a4b42f2454ff462555c07ea094a92a1e0">&#9670;&nbsp;</a></span>rename() <span class="overload">[2/2]</span></h2>
  2424. <div class="memitem">
  2425. <div class="memproto">
  2426. <table class="memname">
  2427. <tr>
  2428. <td class="memname">bool FatFile::rename </td>
  2429. <td>(</td>
  2430. <td class="paramtype"><a class="el" href="class_fat_file.html">FatFile</a> *&#160;</td>
  2431. <td class="paramname"><em>dirFile</em>, </td>
  2432. </tr>
  2433. <tr>
  2434. <td class="paramkey"></td>
  2435. <td></td>
  2436. <td class="paramtype">const char *&#160;</td>
  2437. <td class="paramname"><em>newPath</em>&#160;</td>
  2438. </tr>
  2439. <tr>
  2440. <td></td>
  2441. <td>)</td>
  2442. <td></td><td></td>
  2443. </tr>
  2444. </table>
  2445. </div><div class="memdoc">
  2446. <p>Rename a file or subdirectory.</p>
  2447. <dl class="params"><dt>Parameters</dt><dd>
  2448. <table class="params">
  2449. <tr><td class="paramdir">[in]</td><td class="paramname">dirFile</td><td>Directory for the new path. </td></tr>
  2450. <tr><td class="paramdir">[in]</td><td class="paramname">newPath</td><td>New path name for the file/directory.</td></tr>
  2451. </table>
  2452. </dd>
  2453. </dl>
  2454. <dl class="section return"><dt>Returns</dt><dd>true for success or false for failure. </dd></dl>
  2455. </div>
  2456. </div>
  2457. <a id="a5aac6e0b3cb08fc8b8668e916a8b0ca5"></a>
  2458. <h2 class="memtitle"><span class="permalink"><a href="#a5aac6e0b3cb08fc8b8668e916a8b0ca5">&#9670;&nbsp;</a></span>rewind()</h2>
  2459. <div class="memitem">
  2460. <div class="memproto">
  2461. <table class="mlabels">
  2462. <tr>
  2463. <td class="mlabels-left">
  2464. <table class="memname">
  2465. <tr>
  2466. <td class="memname">void FatFile::rewind </td>
  2467. <td>(</td>
  2468. <td class="paramname"></td><td>)</td>
  2469. <td></td>
  2470. </tr>
  2471. </table>
  2472. </td>
  2473. <td class="mlabels-right">
  2474. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  2475. </tr>
  2476. </table>
  2477. </div><div class="memdoc">
  2478. <p>Set the file's current position to zero. </p>
  2479. </div>
  2480. </div>
  2481. <a id="a9515bac181d33e7f0125e88fa2ccd283"></a>
  2482. <h2 class="memtitle"><span class="permalink"><a href="#a9515bac181d33e7f0125e88fa2ccd283">&#9670;&nbsp;</a></span>rmdir()</h2>
  2483. <div class="memitem">
  2484. <div class="memproto">
  2485. <table class="memname">
  2486. <tr>
  2487. <td class="memname">bool FatFile::rmdir </td>
  2488. <td>(</td>
  2489. <td class="paramname"></td><td>)</td>
  2490. <td></td>
  2491. </tr>
  2492. </table>
  2493. </div><div class="memdoc">
  2494. <p>Remove a directory file.</p>
  2495. <p>The directory file will be removed only if it is empty and is not the root directory. <a class="el" href="class_fat_file.html#a9515bac181d33e7f0125e88fa2ccd283">rmdir()</a> follows DOS and Windows and ignores the read-only attribute for the directory.</p>
  2496. <dl class="section note"><dt>Note</dt><dd>This function should not be used to delete the 8.3 version of a directory that has a long name. For example if a directory has the long name "New folder" you should not delete the 8.3 name "NEWFOL~1".</dd></dl>
  2497. <dl class="section return"><dt>Returns</dt><dd>true for success or false for failure. </dd></dl>
  2498. </div>
  2499. </div>
  2500. <a id="ac780a80526f86d3def701ecdc99d8bfe"></a>
  2501. <h2 class="memtitle"><span class="permalink"><a href="#ac780a80526f86d3def701ecdc99d8bfe">&#9670;&nbsp;</a></span>rmRfStar()</h2>
  2502. <div class="memitem">
  2503. <div class="memproto">
  2504. <table class="memname">
  2505. <tr>
  2506. <td class="memname">bool FatFile::rmRfStar </td>
  2507. <td>(</td>
  2508. <td class="paramname"></td><td>)</td>
  2509. <td></td>
  2510. </tr>
  2511. </table>
  2512. </div><div class="memdoc">
  2513. <p>Recursively delete a directory and all contained files.</p>
  2514. <p>This is like the Unix/Linux 'rm -rf *' if called with the root directory hence the name.</p>
  2515. <p>Warning - This will remove all contents of the directory including subdirectories. The directory will then be removed if it is not root. The read-only attribute for files will be ignored.</p>
  2516. <dl class="section note"><dt>Note</dt><dd>This function should not be used to delete the 8.3 version of a directory that has a long name. See <a class="el" href="class_fat_file.html#ac837a537fbcca14c7aa390c5fc9f4e7c">remove()</a> and <a class="el" href="class_fat_file.html#a9515bac181d33e7f0125e88fa2ccd283">rmdir()</a>.</dd></dl>
  2517. <dl class="section return"><dt>Returns</dt><dd>true for success or false for failure. </dd></dl>
  2518. </div>
  2519. </div>
  2520. <a id="a5812037ea30777cc350698ad26f2c73f"></a>
  2521. <h2 class="memtitle"><span class="permalink"><a href="#a5812037ea30777cc350698ad26f2c73f">&#9670;&nbsp;</a></span>seekCur()</h2>
  2522. <div class="memitem">
  2523. <div class="memproto">
  2524. <table class="mlabels">
  2525. <tr>
  2526. <td class="mlabels-left">
  2527. <table class="memname">
  2528. <tr>
  2529. <td class="memname">bool FatFile::seekCur </td>
  2530. <td>(</td>
  2531. <td class="paramtype">int32_t&#160;</td>
  2532. <td class="paramname"><em>offset</em></td><td>)</td>
  2533. <td></td>
  2534. </tr>
  2535. </table>
  2536. </td>
  2537. <td class="mlabels-right">
  2538. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  2539. </tr>
  2540. </table>
  2541. </div><div class="memdoc">
  2542. <p>Set the files position to current position + <em>pos</em>. See <a class="el" href="class_fat_file.html#ab067190d25733ed7e697d9890f61fd7a">seekSet()</a>. </p><dl class="params"><dt>Parameters</dt><dd>
  2543. <table class="params">
  2544. <tr><td class="paramdir">[in]</td><td class="paramname">offset</td><td>The new position in bytes from the current position. </td></tr>
  2545. </table>
  2546. </dd>
  2547. </dl>
  2548. <dl class="section return"><dt>Returns</dt><dd>true for success or false for failure. </dd></dl>
  2549. </div>
  2550. </div>
  2551. <a id="a84f677f4e75ef6fa2eb632f4cdf6b486"></a>
  2552. <h2 class="memtitle"><span class="permalink"><a href="#a84f677f4e75ef6fa2eb632f4cdf6b486">&#9670;&nbsp;</a></span>seekEnd()</h2>
  2553. <div class="memitem">
  2554. <div class="memproto">
  2555. <table class="mlabels">
  2556. <tr>
  2557. <td class="mlabels-left">
  2558. <table class="memname">
  2559. <tr>
  2560. <td class="memname">bool FatFile::seekEnd </td>
  2561. <td>(</td>
  2562. <td class="paramtype">int32_t&#160;</td>
  2563. <td class="paramname"><em>offset</em> = <code>0</code></td><td>)</td>
  2564. <td></td>
  2565. </tr>
  2566. </table>
  2567. </td>
  2568. <td class="mlabels-right">
  2569. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  2570. </tr>
  2571. </table>
  2572. </div><div class="memdoc">
  2573. <p>Set the files position to end-of-file + <em>offset</em>. See <a class="el" href="class_fat_file.html#ab067190d25733ed7e697d9890f61fd7a">seekSet()</a>. Can't be used for directory files since file size is not defined. </p><dl class="params"><dt>Parameters</dt><dd>
  2574. <table class="params">
  2575. <tr><td class="paramdir">[in]</td><td class="paramname">offset</td><td>The new position in bytes from end-of-file. </td></tr>
  2576. </table>
  2577. </dd>
  2578. </dl>
  2579. <dl class="section return"><dt>Returns</dt><dd>true for success or false for failure. </dd></dl>
  2580. </div>
  2581. </div>
  2582. <a id="ab067190d25733ed7e697d9890f61fd7a"></a>
  2583. <h2 class="memtitle"><span class="permalink"><a href="#ab067190d25733ed7e697d9890f61fd7a">&#9670;&nbsp;</a></span>seekSet()</h2>
  2584. <div class="memitem">
  2585. <div class="memproto">
  2586. <table class="memname">
  2587. <tr>
  2588. <td class="memname">bool FatFile::seekSet </td>
  2589. <td>(</td>
  2590. <td class="paramtype">uint32_t&#160;</td>
  2591. <td class="paramname"><em>pos</em></td><td>)</td>
  2592. <td></td>
  2593. </tr>
  2594. </table>
  2595. </div><div class="memdoc">
  2596. <p>Sets a file's position.</p>
  2597. <dl class="params"><dt>Parameters</dt><dd>
  2598. <table class="params">
  2599. <tr><td class="paramdir">[in]</td><td class="paramname">pos</td><td>The new position in bytes from the beginning of the file.</td></tr>
  2600. </table>
  2601. </dd>
  2602. </dl>
  2603. <dl class="section return"><dt>Returns</dt><dd>true for success or false for failure. </dd></dl>
  2604. </div>
  2605. </div>
  2606. <a id="a67f3dc4896c542d695e11aac927f585e"></a>
  2607. <h2 class="memtitle"><span class="permalink"><a href="#a67f3dc4896c542d695e11aac927f585e">&#9670;&nbsp;</a></span>sync()</h2>
  2608. <div class="memitem">
  2609. <div class="memproto">
  2610. <table class="memname">
  2611. <tr>
  2612. <td class="memname">bool FatFile::sync </td>
  2613. <td>(</td>
  2614. <td class="paramname"></td><td>)</td>
  2615. <td></td>
  2616. </tr>
  2617. </table>
  2618. </div><div class="memdoc">
  2619. <p>The <a class="el" href="class_fat_file.html#a67f3dc4896c542d695e11aac927f585e">sync()</a> call causes all modified data and directory fields to be written to the storage device.</p>
  2620. <dl class="section return"><dt>Returns</dt><dd>true for success or false for failure. </dd></dl>
  2621. </div>
  2622. </div>
  2623. <a id="a56dabdf73833b7e961c4530eb8e16d23"></a>
  2624. <h2 class="memtitle"><span class="permalink"><a href="#a56dabdf73833b7e961c4530eb8e16d23">&#9670;&nbsp;</a></span>timestamp()</h2>
  2625. <div class="memitem">
  2626. <div class="memproto">
  2627. <table class="memname">
  2628. <tr>
  2629. <td class="memname">bool FatFile::timestamp </td>
  2630. <td>(</td>
  2631. <td class="paramtype">uint8_t&#160;</td>
  2632. <td class="paramname"><em>flags</em>, </td>
  2633. </tr>
  2634. <tr>
  2635. <td class="paramkey"></td>
  2636. <td></td>
  2637. <td class="paramtype">uint16_t&#160;</td>
  2638. <td class="paramname"><em>year</em>, </td>
  2639. </tr>
  2640. <tr>
  2641. <td class="paramkey"></td>
  2642. <td></td>
  2643. <td class="paramtype">uint8_t&#160;</td>
  2644. <td class="paramname"><em>month</em>, </td>
  2645. </tr>
  2646. <tr>
  2647. <td class="paramkey"></td>
  2648. <td></td>
  2649. <td class="paramtype">uint8_t&#160;</td>
  2650. <td class="paramname"><em>day</em>, </td>
  2651. </tr>
  2652. <tr>
  2653. <td class="paramkey"></td>
  2654. <td></td>
  2655. <td class="paramtype">uint8_t&#160;</td>
  2656. <td class="paramname"><em>hour</em>, </td>
  2657. </tr>
  2658. <tr>
  2659. <td class="paramkey"></td>
  2660. <td></td>
  2661. <td class="paramtype">uint8_t&#160;</td>
  2662. <td class="paramname"><em>minute</em>, </td>
  2663. </tr>
  2664. <tr>
  2665. <td class="paramkey"></td>
  2666. <td></td>
  2667. <td class="paramtype">uint8_t&#160;</td>
  2668. <td class="paramname"><em>second</em>&#160;</td>
  2669. </tr>
  2670. <tr>
  2671. <td></td>
  2672. <td>)</td>
  2673. <td></td><td></td>
  2674. </tr>
  2675. </table>
  2676. </div><div class="memdoc">
  2677. <p>Set a file's timestamps in its directory entry.</p>
  2678. <dl class="params"><dt>Parameters</dt><dd>
  2679. <table class="params">
  2680. <tr><td class="paramdir">[in]</td><td class="paramname">flags</td><td>Values for <em>flags</em> are constructed by a bitwise-inclusive OR of flags from the following list</td></tr>
  2681. </table>
  2682. </dd>
  2683. </dl>
  2684. <p>T_ACCESS - Set the file's last access date.</p>
  2685. <p>T_CREATE - Set the file's creation date and time.</p>
  2686. <p>T_WRITE - Set the file's last write/modification date and time.</p>
  2687. <dl class="params"><dt>Parameters</dt><dd>
  2688. <table class="params">
  2689. <tr><td class="paramdir">[in]</td><td class="paramname">year</td><td>Valid range 1980 - 2107 inclusive.</td></tr>
  2690. <tr><td class="paramdir">[in]</td><td class="paramname">month</td><td>Valid range 1 - 12 inclusive.</td></tr>
  2691. <tr><td class="paramdir">[in]</td><td class="paramname">day</td><td>Valid range 1 - 31 inclusive.</td></tr>
  2692. <tr><td class="paramdir">[in]</td><td class="paramname">hour</td><td>Valid range 0 - 23 inclusive.</td></tr>
  2693. <tr><td class="paramdir">[in]</td><td class="paramname">minute</td><td>Valid range 0 - 59 inclusive.</td></tr>
  2694. <tr><td class="paramdir">[in]</td><td class="paramname">second</td><td>Valid range 0 - 59 inclusive</td></tr>
  2695. </table>
  2696. </dd>
  2697. </dl>
  2698. <dl class="section note"><dt>Note</dt><dd>It is possible to set an invalid date since there is no check for the number of days in a month.</dd>
  2699. <dd>
  2700. Modify and access timestamps may be overwritten if a date time callback function has been set by dateTimeCallback().</dd></dl>
  2701. <dl class="section return"><dt>Returns</dt><dd>true for success or false for failure. </dd></dl>
  2702. </div>
  2703. </div>
  2704. <a id="a7dda881dac19ea2aa9b2e85a229a98d7"></a>
  2705. <h2 class="memtitle"><span class="permalink"><a href="#a7dda881dac19ea2aa9b2e85a229a98d7">&#9670;&nbsp;</a></span>truncate() <span class="overload">[1/2]</span></h2>
  2706. <div class="memitem">
  2707. <div class="memproto">
  2708. <table class="memname">
  2709. <tr>
  2710. <td class="memname">bool FatFile::truncate </td>
  2711. <td>(</td>
  2712. <td class="paramname"></td><td>)</td>
  2713. <td></td>
  2714. </tr>
  2715. </table>
  2716. </div><div class="memdoc">
  2717. <p>Truncate a file at the current file position. will be maintained if it is less than or equal to <em>length</em> otherwise it will be set to end of file.</p>
  2718. <dl class="section return"><dt>Returns</dt><dd>true for success or false for failure. </dd></dl>
  2719. </div>
  2720. </div>
  2721. <a id="aa6e663098a578635d37d92e82d18d616"></a>
  2722. <h2 class="memtitle"><span class="permalink"><a href="#aa6e663098a578635d37d92e82d18d616">&#9670;&nbsp;</a></span>truncate() <span class="overload">[2/2]</span></h2>
  2723. <div class="memitem">
  2724. <div class="memproto">
  2725. <table class="mlabels">
  2726. <tr>
  2727. <td class="mlabels-left">
  2728. <table class="memname">
  2729. <tr>
  2730. <td class="memname">bool FatFile::truncate </td>
  2731. <td>(</td>
  2732. <td class="paramtype">uint32_t&#160;</td>
  2733. <td class="paramname"><em>length</em></td><td>)</td>
  2734. <td></td>
  2735. </tr>
  2736. </table>
  2737. </td>
  2738. <td class="mlabels-right">
  2739. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  2740. </tr>
  2741. </table>
  2742. </div><div class="memdoc">
  2743. <p>Truncate a file to a specified length. The current file position will be set to end of file.</p>
  2744. <dl class="params"><dt>Parameters</dt><dd>
  2745. <table class="params">
  2746. <tr><td class="paramdir">[in]</td><td class="paramname">length</td><td>The desired length for the file.</td></tr>
  2747. </table>
  2748. </dd>
  2749. </dl>
  2750. <dl class="section return"><dt>Returns</dt><dd>true for success or false for failure. </dd></dl>
  2751. </div>
  2752. </div>
  2753. <a id="a081dd810835f1ebf8c23ffe92706b485"></a>
  2754. <h2 class="memtitle"><span class="permalink"><a href="#a081dd810835f1ebf8c23ffe92706b485">&#9670;&nbsp;</a></span>write() <span class="overload">[1/3]</span></h2>
  2755. <div class="memitem">
  2756. <div class="memproto">
  2757. <table class="mlabels">
  2758. <tr>
  2759. <td class="mlabels-left">
  2760. <table class="memname">
  2761. <tr>
  2762. <td class="memname">size_t FatFile::write </td>
  2763. <td>(</td>
  2764. <td class="paramtype">const char *&#160;</td>
  2765. <td class="paramname"><em>str</em></td><td>)</td>
  2766. <td></td>
  2767. </tr>
  2768. </table>
  2769. </td>
  2770. <td class="mlabels-right">
  2771. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  2772. </tr>
  2773. </table>
  2774. </div><div class="memdoc">
  2775. <p>Write a string to a file. Used by the Arduino Print class. </p><dl class="params"><dt>Parameters</dt><dd>
  2776. <table class="params">
  2777. <tr><td class="paramdir">[in]</td><td class="paramname">str</td><td>Pointer to the string. Use getWriteError to check for errors. </td></tr>
  2778. </table>
  2779. </dd>
  2780. </dl>
  2781. <dl class="section return"><dt>Returns</dt><dd>count of characters written for success or -1 for failure. </dd></dl>
  2782. </div>
  2783. </div>
  2784. <a id="ae51e724ac6cc3d67d64a5a666d5850f1"></a>
  2785. <h2 class="memtitle"><span class="permalink"><a href="#ae51e724ac6cc3d67d64a5a666d5850f1">&#9670;&nbsp;</a></span>write() <span class="overload">[2/3]</span></h2>
  2786. <div class="memitem">
  2787. <div class="memproto">
  2788. <table class="mlabels">
  2789. <tr>
  2790. <td class="mlabels-left">
  2791. <table class="memname">
  2792. <tr>
  2793. <td class="memname">size_t FatFile::write </td>
  2794. <td>(</td>
  2795. <td class="paramtype">uint8_t&#160;</td>
  2796. <td class="paramname"><em>b</em></td><td>)</td>
  2797. <td></td>
  2798. </tr>
  2799. </table>
  2800. </td>
  2801. <td class="mlabels-right">
  2802. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  2803. </tr>
  2804. </table>
  2805. </div><div class="memdoc">
  2806. <p>Write a single byte. </p><dl class="params"><dt>Parameters</dt><dd>
  2807. <table class="params">
  2808. <tr><td class="paramdir">[in]</td><td class="paramname">b</td><td>The byte to be written. </td></tr>
  2809. </table>
  2810. </dd>
  2811. </dl>
  2812. <dl class="section return"><dt>Returns</dt><dd>+1 for success or -1 for failure. </dd></dl>
  2813. </div>
  2814. </div>
  2815. <a id="a5d84d871ac904a22aa48308713d14682"></a>
  2816. <h2 class="memtitle"><span class="permalink"><a href="#a5d84d871ac904a22aa48308713d14682">&#9670;&nbsp;</a></span>write() <span class="overload">[3/3]</span></h2>
  2817. <div class="memitem">
  2818. <div class="memproto">
  2819. <table class="memname">
  2820. <tr>
  2821. <td class="memname">size_t FatFile::write </td>
  2822. <td>(</td>
  2823. <td class="paramtype">const void *&#160;</td>
  2824. <td class="paramname"><em>buf</em>, </td>
  2825. </tr>
  2826. <tr>
  2827. <td class="paramkey"></td>
  2828. <td></td>
  2829. <td class="paramtype">size_t&#160;</td>
  2830. <td class="paramname"><em>count</em>&#160;</td>
  2831. </tr>
  2832. <tr>
  2833. <td></td>
  2834. <td>)</td>
  2835. <td></td><td></td>
  2836. </tr>
  2837. </table>
  2838. </div><div class="memdoc">
  2839. <p>Write data to an open file.</p>
  2840. <dl class="section note"><dt>Note</dt><dd>Data is moved to the cache but may not be written to the storage device until <a class="el" href="class_fat_file.html#a67f3dc4896c542d695e11aac927f585e">sync()</a> is called.</dd></dl>
  2841. <dl class="params"><dt>Parameters</dt><dd>
  2842. <table class="params">
  2843. <tr><td class="paramdir">[in]</td><td class="paramname">buf</td><td>Pointer to the location of the data to be written.</td></tr>
  2844. <tr><td class="paramdir">[in]</td><td class="paramname">count</td><td>Number of bytes to write.</td></tr>
  2845. </table>
  2846. </dd>
  2847. </dl>
  2848. <dl class="section return"><dt>Returns</dt><dd>For success <a class="el" href="class_fat_file.html#a081dd810835f1ebf8c23ffe92706b485">write()</a> returns the number of bytes written, always <em>count</em>. If an error occurs, <a class="el" href="class_fat_file.html#a081dd810835f1ebf8c23ffe92706b485">write()</a> returns -1. Possible errors include <a class="el" href="class_fat_file.html#a081dd810835f1ebf8c23ffe92706b485">write()</a> is called before a file has been opened, write is called for a read-only file, device is full, a corrupt file system or an I/O error. </dd></dl>
  2849. </div>
  2850. </div>
  2851. <h2 class="groupheader">Friends And Related Function Documentation</h2>
  2852. <a id="a6ca3f436167f187097347a20ea221555"></a>
  2853. <h2 class="memtitle"><span class="permalink"><a href="#a6ca3f436167f187097347a20ea221555">&#9670;&nbsp;</a></span>FatVolume</h2>
  2854. <div class="memitem">
  2855. <div class="memproto">
  2856. <table class="mlabels">
  2857. <tr>
  2858. <td class="mlabels-left">
  2859. <table class="memname">
  2860. <tr>
  2861. <td class="memname">friend class <a class="el" href="class_fat_volume.html">FatVolume</a></td>
  2862. </tr>
  2863. </table>
  2864. </td>
  2865. <td class="mlabels-right">
  2866. <span class="mlabels"><span class="mlabel">friend</span></span> </td>
  2867. </tr>
  2868. </table>
  2869. </div><div class="memdoc">
  2870. <p><a class="el" href="class_fat_volume.html" title="Integration class for the FatLib library. ">FatVolume</a> allowed access to private members. </p>
  2871. </div>
  2872. </div>
  2873. <hr/>The documentation for this class was generated from the following files:<ul>
  2874. <li>ArduinoSdFat/libraries/SdFat/src/FatLib/<a class="el" href="_fat_file_8h.html">FatFile.h</a></li>
  2875. <li>ArduinoSdFat/libraries/SdFat/src/FatLib/FatFile.cpp</li>
  2876. <li>ArduinoSdFat/libraries/SdFat/src/FatLib/FatFileLFN.cpp</li>
  2877. <li>ArduinoSdFat/libraries/SdFat/src/FatLib/FatFilePrint.cpp</li>
  2878. <li>ArduinoSdFat/libraries/SdFat/src/FatLib/FatFileSFN.cpp</li>
  2879. </ul>
  2880. </div><!-- contents -->
  2881. <!-- start footer part -->
  2882. <hr class="footer"/><address class="footer"><small>
  2883. Generated on Mon Nov 18 2019 08:14:17 for SdFat by &#160;<a href="http://www.doxygen.org/index.html">
  2884. <img class="footer" src="doxygen.png" alt="doxygen"/>
  2885. </a> 1.8.14
  2886. </small></address>
  2887. </body>
  2888. </html>