Английские буквы

  • 10
  • Недоступна
В метод main первым параметром приходит имя файла. Посчитать количество букв английского алфавита, которое есть в этом файле. Вывести на экран число (количество букв). Закрыть потоки.
Вы не можете решать эту задачу, т.к. не залогинены.
Комментарии (101)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий вы должны авторизоваться
Пётр33 уровень, Москва
14 апреля, 16:10
while (fis.available() > 0) {
   int myByte = fis.read();
   if ( (myByte >= 'a' && myByte <= 'z') || (myByte >= 'A' && myByte <= 'Z'))
          count++;
}
Petrusiova23 уровень
7 марта, 11:37
Пошла длинным путем: - создала файл для 1-го аргумента - создала файл с английскими буквами - запихнула в строки, выполнила toLowerCase(); - сравнила символы из обоих файлов, результат совпадения вывела на экран - закрыла потоки ЧТО НЕ ТАК? если у кого есть возможность, пожалуйста, посмотрите. Спасибо. https://javarush.ru/help/17447
Ivan Kozlovich20 уровень, Санкт-Петербург
27 февраля, 20:07
Благодаря этой задаче, я узнал, что оказывается можно передавать первый параметр в main. До этого момента мне на Javarush эта информация не попадалась. Поэтому долго не мог понять чего от меня хотят создатели задачи)))
Александр22 уровень, Казань
12 марта, 07:51
Задачи с параметрами были пару уровней назад.
victor19 уровень
15 февраля, 08:41
можно обойтись без поиска ASCII код . просто делаем кастинг
if (data >= (int) 'A' && data <= (int) 'Z'
            || data >= (int) 'a' && data <= (int) 'z') {
        count++;
    }
}
Shamil20 уровень
19 февраля, 10:26
явный каст тут не нужен (int)
REM23 уровень, Москва
23 февраля, 18:03
а что так тоже можно было?
13Black33 уровень, Москва
8 февраля, 20:25
Использовал вариант решения из предыдущих задач с int[] array = new int[256].
Олег19 уровень, Киев
23 января, 12:05
кто знает подскажите пожалуйста! если объявить поток:
BufferedInputStream in = new BufferedInputStream(new FileInputStream(srcFileName);
а потом закрыть только "in":
in.close();
Собственно вопрос - произойдет ли автоматическое закрытие переданного в скобках "new FileInputStream(srcFileName);"?
Николай22 уровень
22 февраля, 07:37
все вложенные потоки закрываются
Александр32 уровень
15 сентября 2018, 17:40
английские буквы находятся в диапазоне 65-122 байт.
4 декабря 2018, 08:22
По таблице в интернете 65-90 диапазон прописных букв, 97-122 строчных.
Максим27 уровень
28 августа 2018, 15:00
Люди подскажите, плиз, как перед отправокй на проверку не забывать убирать костыли, типа:
args = new String[]{"e:/temp/file1.txt"};
Какой-то напоминатель надо придумать, а то по нескольку попыток трачу в каждой задаче, где нужно с клавиатуры ввести или передать из командной строки аргументы. За идеи спасибо заранее!
Alexander Sedov34 уровень, Москва
30 августа 2018, 06:40
пиши в конце строки //todo будет подсвечиваться желтым даже =)
Максим27 уровень
30 августа 2018, 14:44
Классно! Пасибо большое! Теперь, хоть вижу что поубирать надо!
Andry Max35 уровень, Минск
9 августа 2018, 02:30
ах блин постоянно забываю закрыть поток, в итоге со второй попытки. решал через паттерн, сделал быстро, но всё равно кажется что заморочился, т.к. ниже сделали просто через сравнение символов, забыл что так можно)
Роман Патрушев23 уровень, Казань
24 августа 2018, 15:53
через какой паттерн?
Veronika26 уровень, Москва
29 ноября 2018, 08:34
https://javarush.ru/groups/posts/1135-reguljarnihe-vihrazhenija-v-java
Екатерина19 уровень, Москва
5 августа 2018, 20:30
прошло FileInputStream inputStream = new FileInputStream(args[0]); byte[] bytes = new byte[inputStream.available()]; int count = inputStream.read(bytes); inputStream.close(); int counter = 0; for (byte a : bytes) { if ((a >= 65 && a <= 90) || (a >= 97 && a <= 122)) { counter++; } } System.out.println(counter);
Voffka22 уровень, Киев
25 января, 11:52
int count = inputStream.read(bytes);
вот єто зачем ? "int count =" в данном случае ниочем.
Aquaelia19 уровень
27 января, 14:10
inputStream.read(bytes);
Shamil20 уровень
19 февраля, 10:43
Если придет символ допустим "¶"-у которого код 184 который кастится в 74, а это символ 'J' т.е. данный Java-код не верно подсчитает кол. англ. символов Лучше массив сделать int или char
notanord20 уровень, Минск
21 февраля, 18:03
Как вы помещаете массив int в аргумент метода read(byte[])?
notanord20 уровень, Минск
21 февраля, 18:36
спасибо