while (inStream.available() > 0)
{
int data = inStream.read();
System.out.print((char) data);
}
Я понимаю только что цикл читает что то из файла и выводит на экран
Artur Iskandarov
20 уровень
Пожалуйста объясните доходчивым языком этот кусок кода
Решен
Комментарии (1)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Justinian Judge в Mega City One Master
16 июля 2019, 13:13решение
пока (из потока данных файла есть что читать)
{
int data = получить один байт с потока данных файла (числовое значение от 0 до 255);
System.out.print ( (привести к символьному формату) байт с файла в числовом значении);
}
Пример байта в числовом значении: 65
Выведет на экран:
А
Но корректный вывод будет только для стандартной ASCII раскладки из-за того, что чтение побайтовое. Иероглифы, другие языки и кодировки, русский алфавит может кодироваться от двух до четырех байт, а значит выводится будет некорректно.
Но и не должно корректно выводится - либо работаем с файлом как с байтами, через метод read() либо работаем с символами, строками и числами, тогда используем методы Сканера и БуфередРидера +7