Форум программистов, компьютерный форум, киберфорум
Java для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.64/11: Рейтинг темы: голосов - 11, средняя оценка - 4.64
0 / 0 / 0
Регистрация: 16.01.2013
Сообщений: 22

Сравнение символа и клавиатуры и из файла

10.12.2019, 16:53. Показов 2298. Ответов 5

Студворк — интернет-сервис помощи студентам
Здравствуйте.
Есть .txt файл, для простоты в нём только алфавит, без цифр и символов. Но с пробелами.
С клавиатуры ввожу букву, лезу в файл, считаю сколько раз моя буква встретилась, вывожу цифру на экран.
Вот мой код


Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
        String symbol_GonaSearch = reader.readLine();  // эту букву буду искать
/*----------------------------------------------------------------*/
        char symbolI_Need = symbol_GonaSearch.charAt(0);  // присваиваю первый символ из строки с клавиатуры
        int numberOfSequence = 0;                                   // счётчик совпадений
        
        try(FileReader fileReader = new FileReader("C:\\Users\\Roman\\Desktop\\AAA.txt"))  // достаю файл
           {
        @SuppressWarnings("resource")                            // это не знаю зачем, эклипс попросила написать
        Scanner scanToTextFromFile = new Scanner(fileReader);  // через сканер что-бы работать с его методами
        
         while(scanToTextFromFile.nextLine() != null)          // до тех пор пока есть строки ...
             {
             String textStringForRewritteLines = scanToTextFromFile.next(); // строку записываю в новую стрингу
             for(int i = 0; i < textStringForRewritteLines.length(); i ++) // прохожусь по всем символам в строке
                {
                 if(
                         textStringForRewritteLines.charAt(i) == symbolI_Need)  // если совпадают 
                   { numberOfSequence ++;}              // счётчик плюс один
                 }
             }
           }catch(NoSuchElementException seex) {         // а вот если что не так...
               System.out.print(StringStore.errorMessage + "\n"+  seex + "\n"); // пишем что именно
           }
        System.out.print(numberOfSequence);
Всегда выводит ноль.
Сообщение : java.util.NoSuchElementException
Ругается на строку String textStringForRewritteLines = scanToTextFromFile.next();
Подсажите пожалуйста, где я наговнокодил.
Т.Е. "где" я понимаю, но "что" не понимаю
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
10.12.2019, 16:53
Ответы с готовыми решениями:

Сравнение символа, вводимого с клавиатуры, с символом из label
Вечер добрый, киберфорумчане! Пишу программку, и возникла такая проблема: в label находится 3 символа (A, S, D), которые выходят рандомно...

Сравнение строк, введенных с клавиатуры со строками файла
char* x=strstr(op,' '); x++; if(strcmp(x,buf)==NULL){ printf(&quot;равны&quot;); ...

Ввод символа с клавиатуры, вывод на экран символа и его кода в десятичной записи
Доброе время суток. Нужно написать программу на ассемблере, которая осуществляет ввод символа с клавиатуры, преобразовывает полученный...

5
Эксперт Java
3639 / 2971 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
10.12.2019, 17:17
Цитата Сообщение от RomanF Посмотреть сообщение
scanToTextFromFile.nextLine()
прочитай, что делает этот метод
0
115 / 79 / 40
Регистрация: 18.12.2015
Сообщений: 192
10.12.2019, 17:22
Java
1
scanToTextFromFile.read()
0
 Аватар для Aviz__
2741 / 2050 / 507
Регистрация: 17.02.2014
Сообщений: 9,470
11.12.2019, 09:08
Лучший ответ Сообщение было отмечено RomanF как решение

Решение

RomanF,
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import java.io.IOException;
import java.nio.file.*;
 
public class Helper {
 
    public static void main(String[] args) {
        System.out.println(getCountCharInText("input.txt", "o"));
    }
 
    private static int getCountCharInText(String fileName, String interestCh) {
        int [] counter = {0};
        try {
            Files.lines(Paths.get(fileName))
                    .filter(line -> line.contains(interestCh))
                    .forEach(line -> counter[0] += line.length() - line.replaceAll(interestCh,"").length());
        } catch (IOException ex) {ex.printStackTrace();}
        return counter[0];
    }
}
1
11.12.2019, 09:22

Не по теме:

Aviz__, ваще чтение и оперирование данными лучше разделять, наверное

0
11.12.2019, 09:26

Не по теме:

Gungala, Ок, разделяй)). это же развлекательный форум, а не образовательный))

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
11.12.2019, 09:26
Помогаю со студенческими работами здесь

сравнение символа
вот написал if (strcmp(&amp;a,&quot; &quot;)) то что a бывает пробел доказано но не получается сравнить что можно подставить вместо &quot;...

Сравнение текста из файла и сравнение с текстом в программе char - Dev C++
Доброго времени суток! Имеется код программы: ifstream test(&quot;primer.txt&quot;); char awm = &quot;kod&quot;; char buff; test &gt;&gt; buff; if...

Сравнение символа и строки
#include &lt;stdio.h&gt; # include &lt;string.h&gt; # include &lt;stdlib.h&gt; # include &lt;conio.h&gt; # include &lt;stdio.h&gt; # include &lt;ctype.h&gt; ...

Сравнение символа и регистра
Всем привет! Возник такой вопрос: Нужно сравнивать код ascсi символа и значение лежащее в регистре. В синтаксисе асемблера Intel это...

Сравнение строки и символа
string slovar = &quot;абвгдеежзийклмнопрстуфхцчшщэюя&quot;; char guess; while (true) { cout &lt;&lt; &quot;введите букву: &quot;; cin...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru