Pregunta

¿Cuál es la mejor manera de escribir bytes en medio de un archivo utilizando Java?

¿Fue útil?

Solución

Leer y escribir en la mitad de un archivo es tan simple como usar RandomAccessFile en Java.

RandomAccessFile , a pesar de su nombre, es más como un InputStream y OutputStream y menos como un File . Le permite leer o buscar a través de bytes en un archivo y luego comenzar a escribir sobre los bytes en los que quiera detenerse.

Una vez que descubras esta clase, es muy fácil de usar si tienes un conocimiento básico de la entrada / salida del archivo regular.

Un pequeño ejemplo:

public static void aMethod(){
    RandomAccessFile f = new RandomAccessFile(new File("whereDidIPutTHatFile"), "rw");
    long aPositionWhereIWantToGo = 99;
    f.seek(aPositionWhereIWantToGo); // this basically reads n bytes in the file
    f.write("Im in teh fil, writn bites".getBytes());
    f.close();
}

Otros consejos

Utilice RandomAccessFile

Abra el archivo en modo de escritura sin truncarlo, busque el desplazamiento deseado y escriba los datos deseados. Solo ten cuidado con el modo texto / binario.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top