Cambiar un byte específico en un archivo

Estoy intentando escribir una función java que cambiará 1 byte en un archivo grande. ¿Cómo puedo leer y escribir en una dirección específica en un archivo con java en Android? He intentado fis.read (byte b [], int off, int len) y siempre tengo una fuerza cerca.

Utilice RandomAccessFile .

Ejemplo de arranque:

 RandomAccessFile raf = new RandomAccessFile(file, "rw"); try { raf.seek(5); // Go to byte at offset position 5. raf.write(70); // Write byte 70 (overwrites original byte at this offset). } finally { raf.close(); // Flush/save changes and close resource. }