You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

2990 line
137KB

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