Pessoal, tenho uma aplicação Java que grava um arquivo de inteiros e shorts.
O Conteúdo desse arquivo é lido por um programa em C++. Portanto, para gravar o arquivo com um numero inteiro preciso usar a seguinte função que converte os Bits (sei lá porque precisa disso) e grava o arquivo:
public void gravarInteiro (RandomAccessFile file, int valor){
int x = valor;
x = ((x >> 24) & (0xFF) | (x >> 8) & (0xFF00) | (x << 8) & (0xFF0000) | (x << 24) & (0xFF000000));
try {
file.writeInt(x);
} catch (IOException e) {
e.printStackTrace();
}
}
Essa função funciona. Porém só pra inteiros… foi um amigo quem me recomendou que fizesse assim. O problema é que preciso gravar também, além de inteiros, valores dos tipos SHORT e FLOAT. e num sei como manipular os bits de forma correta.
Alguém pode me mostrar como é?