Buenos dias estoy accesando a un xml via java con RandomAccessFile para agregarle al archivo el BOM(Byte Order Mark) por cuentiones de hacienda bla bla este es mi codigo
public static void main (String[] args) throws IOException {
File f = new File(args[0]);
RandomAccessFile raf = new RandomAccessFile(f, "rw");
try {
// escribe UTF8 BOM mark
raf.seek(0);
final byte[] bom = new byte[] { (byte)0xEF, (byte)0xBB, (byte)0xBF };
raf.write(bom);
Y si agrega los bytes pero el problema es que me sustituye los primeros tres bytes en vez de agregarlos, como puedo hacer para que en ves de substituirlos los agrege al inicio del xml