Diferencia entre revisiones de «File.available()»

De ArduWiki
Saltar a: navegación, buscar
(Sintaxis)
(Sintaxis)
 
Línea 4: Línea 4:
 
== Sintaxis ==
 
== Sintaxis ==
 
<pre>
 
<pre>
File archivo;
+
File archivo = SD.open("archivo.txt", FILE_WRITE);
 
archivo.available();
 
archivo.available();
 
</pre>
 
</pre>

Revisión actual del 19:17 3 jul 2019

Descripción

Obtiene el número de bytes disponibles para leer en el archivo (antes de llegar al final de este).

Sintaxis

File archivo = SD.open("archivo.txt", FILE_WRITE);
archivo.available();

Parámetros

Nada.

Retorno

La cantidad de bytes/caracteres disponibles para lectura (int).

Comentarios

Si hay más de 32 KB para leer, esta función siempre retornará 32767 hasta que ocurra lo contrario. Por lo tanto, esta no es la forma más certera de hacerlo si se necesitara de un valor exacto; y mucho menos para determinar el tamaño de archivo.

En ese caso, el cálculo más adecuado sería:

unsigned long bytesRestantes = archivo.size() - archivo.position();

Ejemplo

Alternativa al ejemplo en File.read():

void setup(){
   Serial.begin(9600);
   // Tarjeta inicializada y archivo abierto para lectura

   while (archivo.available()){
      Serial.write((archivo.read());
   }
   archivo.close();
}

Vea también


Referencias