• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
2<html lang="en">
3<head>
4<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
5<meta http-equiv="Content-Style-Type" content="text/css">
6<link rel="up" title="FatFs" href="../00index_e.html">
7<link rel="alternate" hreflang="ja" title="Japanese" href="../ja/read.html">
8<link rel="stylesheet" href="../css_e.css" type="text/css" media="screen" title="ELM Default">
9<title>FatFs - f_read</title>
10</head>
11
12<body>
13
14<div class="para func">
15<h2>f_read</h2>
16<p>The f_read function reads data from a file.</p>
17<pre>
18FRESULT f_read (
19  FIL* <span class="arg">fp</span>,     <span class="c">/* [IN] File object */</span>
20  void* <span class="arg">buff</span>,  <span class="c">/* [OUT] Buffer to store read data */</span>
21  UINT <span class="arg">btr</span>,    <span class="c">/* [IN] Number of bytes to read */</span>
22  UINT* <span class="arg">br</span>     <span class="c">/* [OUT] Number of bytes read */</span>
23);
24</pre>
25</div>
26
27<div class="para arg">
28<h4>Parameters</h4>
29<dl class="par">
30<dt>fp</dt>
31<dd>Pointer to the open file object.</dd>
32<dt>buff</dt>
33<dd>Pointer to the buffer to store the read data.</dd>
34<dt>btr</dt>
35<dd>Number of bytes to read in range of <tt>UINT</tt> type. If the file needs to be read fast, it should be read in large chunk as possible.</dd>
36<dt>br</dt>
37<dd>Pointer to the <tt>UINT</tt> variable that receives number of bytes read. This value is always valid after the function call regardless of the function return code. If the return value is equal to <tt class="arg">btr</tt>, the function return code should be <tt>FR_OK</tt>.</dd>
38</dl>
39</div>
40
41
42<div class="para ret">
43<h4>Return Values</h4>
44<p>
45<a href="rc.html#ok">FR_OK</a>,
46<a href="rc.html#de">FR_DISK_ERR</a>,
47<a href="rc.html#ie">FR_INT_ERR</a>,
48<a href="rc.html#dn">FR_DENIED</a>,
49<a href="rc.html#io">FR_INVALID_OBJECT</a>,
50<a href="rc.html#tm">FR_TIMEOUT</a>
51</p>
52</div>
53
54
55<div class="para desc">
56<h4>Description</h4>
57<p>The function starts to read data from the file at the file offset pointed by read/write pointer. The read/write pointer advances as number of bytes read. After the function succeeded, <tt class="arg">*br</tt> should be checked to detect end of the file. In case of <tt class="arg">*br</tt> &lt; <tt class="arg">btr</tt>, it means the read/write pointer hit end of the file during read operation.</p>
58</div>
59
60
61<div class="para comp">
62<h4>QuickInfo</h4>
63<p>Always available.</p>
64</div>
65
66
67<div class="para use">
68<h4>Example</h4>
69<p>Refer to the example in <tt>f_open</tt>.</p>
70</div>
71
72
73<div class="para ref">
74<h4>See Also</h4>
75<p><tt><a href="open.html">f_open</a>, <a href="gets.html">fgets</a>, <a href="write.html">f_write</a>, <a href="close.html">f_close</a>, <a href="sfile.html">FIL</a></tt></p>
76</div>
77
78<p class="foot"><a href="../00index_e.html">Return</a></p>
79</body>
80</html>
81