Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How do i read in binary data files in java

So I'm doing a project for school where I need to read in a binary data file and use it to make stats, like strength and wisdom, for characters. It's set up so the first 8 bits make up one stat.

I was wondering what the actual syntax to do this is. Is it like reading text files, like this.

File file = new File("CharacterStats.dat");
Scanner inputScanner = new Scanner(file);

inputScanner.next();
like image 346
Ionterac Avatar asked Apr 15 '16 17:04

Ionterac


1 Answers

If you're using JDK 7+ the easiest way would be:

Path path = Paths.get("CharacterStats.dat");
byte[] fileContents =  Files.readAllBytes(path);

And then do with that array whatever you want.

Since a byte includes 8 bits you can access the first 8 bits by fileContents[0] and then probably control the flow of your program using bitwise operations.

like image 172
Ali Seyedi Avatar answered Oct 13 '22 00:10

Ali Seyedi