File.write()
Contenido
Descripción
Escribe datos binarios ("crudos") al archivo, haciendo esta función útil para archivos binarios (con contenido diferente al texto plano).
Si el "cursor" está posicionado al final del archivo (o alcanza dicho punto en el proceso), esta función lo hará crecer lo necesario para que todos los datos sean escritos. El tope de este crecimiento está en el espacio libre del "volumen" o al alcanzar los 4 GB (4294967295 bytes) de tamaño.
Si este "cursor" no está posicionado al final del archivo, entonces esta función sobrescribirá datos existentes (a partir de la posición actual); lo que hace un tanto difícil reemplazar valores en registros de longitud variable.
Sintaxis
archivo.write(val); archivo.write(str); archivo.write(buf, len);
Parametros
- val
- Valor como un solo byte o variable (el byte menos significativo en caso de ser más grande).
- str
- Cadena como una serie de bytes (string).
- buf
- Matriz enviada como una serie de bytes (byte*).
- len
- Largo de la matriz en bytes (int).
Retorno
La cantidad real de bytes que se escribieron con éxito (int). Puede fallar si el archivo no puede crecer, si no está abierto o no fue abierto para escritura.
Advertencias
- Para escribir los caracteres que representan los dígitos de un número, use la función File.print() en su lugar.
- Esta función siempre fallará si la instancia representa un directorio o carpeta.
Ejemplo
while (Serial.available()) {
archivo.write(Serial.read()); // Vuelca el contenido "crudo" o binario del puerto serial, al archivo
}