ですから、私は学校向けのプロジェクトを行っています。そこでは、バイナリデータファイルを読み込み、それを使用して、キャラクターの強さや知恵などの統計を作成する必要があります。最初の8ビットが1つの統計を構成するように設定されています。
これを行うための実際の構文は何であるか疑問に思いました。このようにテキストファイルを読むようなものですか。
File file = new File("CharacterStats.dat");
Scanner inputScanner = new Scanner(file);
inputScanner.next();
JDK 7以降を使用している場合、最も簡単な方法は次のとおりです。
Path path = Paths.get("CharacterStats.dat");
byte[] fileContents = Files.readAllBytes(path);
そして、あなたが望むものは何でもその配列で行います。
バイトには8ビットが含まれているため、fileContents[0]
で最初の8ビットにアクセスし、 ビット演算 を使用してプログラムのフローを制御できます。
スキャナーの代わりに、次のようなものを使用します。
File file = new File("CharacterStats.dat");
FileInputStream fis = new FileInputStream(file);
ObjectInputStream ois = new ObjectInputStream(fis);
YourClass object = (YourClass) ois.readObject();
3行目では、ストリームから新しいオブジェクトを作成し、それを目的のオブジェクトにキャストしています。 Javaはどのオブジェクトが読み込まれているのかわからないため、これを行う必要があります。
編集:これは、シリアル化されたオブジェクトとしてバイナリデータを読み込むためのものです。私はあなたの質問をあなたの「統計」がオブジェクトであると誤解したかもしれません。