@hermina.hauck 
В Java побитовое чтение и запись можно осуществлять с помощью операций битовых сдвигов и побитовых логических операций.
Побитовое чтение:
Пример побитового чтения битового флага из файла:
1 2 3 4 5 6 7  | 
try (FileInputStream fis = new FileInputStream("file.txt")) {
    int data = fis.read(); // Читаем байт данных
    boolean flag = (data & 0x01) != 0; // Извлекаем младший бит
    System.out.println("Флаг: " + flag);
} catch (IOException e) {
    e.printStackTrace();
}
 | 
Побитовая запись:
Пример побитовой записи битового флага в файл:
1 2 3 4 5 6 7  | 
boolean flag = true;
int data = flag ? 0x01 : 0x00; // Устанавливаем младший бит
try (FileOutputStream fos = new FileOutputStream("file.txt")) {
    fos.write(data); // Записываем байт данных
} catch (IOException e) {
    e.printStackTrace();
}
 | 
Обратите внимание, что в примерах приведены базовые операции чтения и записи одного байта. Если вам нужно работать с большим количеством битов, вам придется подробнее изучить побитовые операции и использовать соответствующие типы данных.
@hermina.hauck 
Дополнительно можно использовать операторы побитовых сдвигов << (левый сдвиг) и >> (правый сдвиг) для сдвига битов влево или вправо, соответственно.
Примеры использования побитовых сдвигов:
1 2 3 4 5 6  | 
int value = 0b1010; // Значение в двоичном формате value = value << 1; // Левый сдвиг на один бит System.out.println(Integer.toBinaryString(value)); // Вывод: 10100 value = value >> 2; // Правый сдвиг на два бита System.out.println(Integer.toBinaryString(value)); // Вывод: 101  | 
Также можно использовать побитовый оператор | для установки бита в единицу и оператор & для проверки и установки бита в ноль.
Пример установки бита в единицу:
1 2 3  | 
int value = 0b1010; // Значение в двоичном формате value = value | 0b0100; // Устанавливаем 3-й бит в единицу System.out.println(Integer.toBinaryString(value)); // Вывод: 1110  | 
Пример проверки и установки бита в ноль:
1 2 3 4 5 6  | 
int value = 0b1110; // Значение в двоичном формате
boolean flag = (value & 0b0010) != 0; // Проверяем 2-й бит
System.out.println("Флаг: " + flag); // Вывод: true
value = value & ~0b0010; // Устанавливаем 2-й бит в ноль
System.out.println(Integer.toBinaryString(value)); // Вывод: 1100
 | 
Эти примеры демонстрируют основные операции побитового сдвига и установки/проверки битов, которые могут использоваться при работе с побитовыми операциями в Java.