Bitte beachten: bei Binärformaten kann es vorkommen, dass die Bytereihenfolge der Datentypen vertauscht ist. Siehe auch: Bytedaten einlesen und konvertieren (Little Endian / Big Endian).
import java.io.DataInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
public boolean LoadBinaryData(String filename) throws IOException
{
boolean bRetVal = false;
FileInputStream fis = null;
DataInputStream dis = null;
try
{
File f = new File(filename);
if (f.isFile() && f.canRead())
{
fis = new FileInputStream(filename);
dis = new DataInputStream(fis);
// Bsp.: 8 Bytes lesen
byte[] Test1 = new byte[8];
dis.read(Test1);
// Bsp.: 1 Byte lesen
byte Test2 = dis.readByte();
// Bsp.: n float lesen
while (dis.available() > 0)
{
float Test3 = dis.readFloat();
System.out.println(Test3);
}
bRetVal = true;
}
}
catch (Exception e)
{
e.printStackTrace();
}
finally
{
if (fis != null) fis.close();
if (dis != null) fos.close();
}
return bRetVal;
}