@FALSHER_DEV

FileReader игнорирует первые два байта. В чем дело?

Есть у меня простейший код для проверки работы FileReader:
Code/Java
Reader r = new FileReader("1234.dmap");
System.out.println(Integer.toHexString(r.read()));
System.out.println(Integer.toHexString(r.read()));
System.out.println(Integer.toHexString(r.read()));
System.out.println(Integer.toHexString(r.read()));

Собственно, сам файл:
1234.dmap
EB AF 3D 1A 63 6F 6D 2E

И вывод консоль после выполнения кода:
Вывод

fffd
3d
1a
63

Как можно заметить, FileReader полностью игнорирует первые два байта, вдобавок размер первого байта превышает норму. При этом, с FileInputStream все работает нормально
Помогите разобраться в проблеме
  • Вопрос задан
  • 69 просмотров
Решения вопроса 1
@nApoBo3
FileReader не предназначен для чтения "сырых" данных, он читает текстовые данные с учетом системной кодировки.
https://javarush.ru/help/7579
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы