Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.89/9: Рейтинг темы: голосов - 9, средняя оценка - 4.89
0 / 0 / 1
Регистрация: 28.01.2016
Сообщений: 20

Сравнение Данных файла и вводимых данных

02.03.2016, 19:47. Показов 1994. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
package register;
 
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.logging.Level;
import java.util.logging.Logger;
import java.util.Scanner;
 
 
public class Registration {
 
    public Registration() {
        
    }
    public void Process(){
    Scanner sc = new Scanner(System.in);
        String log = "";
        String pass = "";
        String rPass = "";
        File qwer = new File("БазаДанных.txt");
        FileWriter fw = null;
        FileReader r = null ; 
        try {
            r=new FileReader(qwer);
            fw = new FileWriter("БазаДанных.txt",true);
           
        } catch (IOException ex) {
            Logger.getLogger(Register.class.getName()).log(Level.SEVERE, null, ex);
        }
        try {
                    System.out.println("Введите своё имя");
                    fw.write(sc.next()+" ");
                    System.out.println("Введите свою фамилию");
                    fw.write(sc.next()+" ");
                    System.out.println("Введите дату своего рождения");
                    fw.write(sc.next()+" ");
                    System.out.println("Введите свой логин");
                    log = sc.next();
                    fw.write(log+" ");
                    System.out.println("Введите пароль");
                    pass = sc.next();
                    fw.write(pass+" ");
                    for (;;) {
                        System.out.println("Повторите пароль");
                        rPass = sc.next();
                        if(!pass.equals(rPass)){
                            System.out.println("Пароли не совпадают!");
                        }
                        else{
                        break;
                        }
                    }
                    fw.write("\r\n");
                    fw.close();
                } catch (IOException ex) {
                    Logger.getLogger(Register.class.getName()).log(Level.SEVERE, null, ex);
                }
       
    }
    
}
нужно сделать так чтобы при вводе Логина программа сравнивала его с логинами из файла, игнорируя имена фамилии и т.д. не могу понять как это сделать( заранее благодарен всем)
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
02.03.2016, 19:47
Ответы с готовыми решениями:

Сравнение вводимых данных с имеющимися
В общем, суть проблемы заключается в следующем: есть 3 поля ввода и список (combobox) с наименованиями. Информация в комбобоксе записана...

Сравнение типов данных вводимых пользователем
Здравствуйте, пытался гуглить, но ничего не нашел. Проблема: К примеру пользователь в программе должен ввести число и дальше идет...

Не видно данных, вводимых в таблицу в режиме ввода данных
Добрый день! Ввожу данные в ячейку таблицы в режиме ввода данных. Проблема в том, что когда их ввожу, то данные не видны. Они...

3
50 / 49 / 25
Регистрация: 05.02.2016
Сообщений: 146
03.03.2016, 15:13
Попробуйте в самом начале Вашего Process сделать
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
        ArrayList<String> usedLogins = null;
        try {
            try (BufferedReader br = new BufferedReader(new FileReader("БазаДанных.txt"))) {
                usedLogins = br.lines().map(s -> s.split(" ")[3]).collect(Collectors.toCollection(ArrayList::new));
                // Варианты:
                // простой
                //usedLogins = new ArrayList<>();
                //br.lines().forEach((s) -> usedLogins.add(s.split(" ")[3]));
                // или мозговыносящий
                //usedLogins = br.lines().collect(() -> new ArrayList<>(), (c, e) -> c.add(e.split(" ")[3]), (c1, c2) -> c1.addAll(c2));
            }
        } catch (IOException ex) {
            Logger.getLogger(Registration.class.getName()).log(Level.SEVERE, null, ex);
        }
А процесс ввода логина сделать таким:
Java
1
2
3
4
5
6
7
8
9
            for (;;) {
                System.out.println("Введите свой логин");
                log = sc.next();
                if (usedLogins.contains(log)) {
                    System.out.println("Такой логин уже есть!");
                } else {
                    break;
                }
            }
Это пример. На практике я бы вечных циклов не делал
1
0 / 0 / 1
Регистрация: 28.01.2016
Сообщений: 20
03.03.2016, 21:07  [ТС]
Max_Sys, Я извиняюсь, BufferedReader мы ещё не проходили XDD так что мне нельзя его использовать((( и хотелось бы узнать почему не стоит использовать бесконечный цикл? Я не могу понять как ещё можно вытащить конкретные данные из файла? т.е. в моём случае логин всегда 5 слово сохранённое в файле.
В любом случае спасибо
0
03.03.2016, 22:50

Не по теме:

Цитата Сообщение от NoviceProgger Посмотреть сообщение
BufferedReader мы ещё не проходили XDD так что мне нельзя его использовать
Как я "люблю" такие ограничения в наших ВУЗах. Вместо того чтобы поощрять развитие студентов, они искуственно тормозят развитие, а иногда даже вредят ему.
От них можно ожидать лабораторных по апплетам в 2016 году и прочих чудес. А количество технологий по любому ЯП, из года в год, растёт экспоненциально.
Нет будущего у этой страны :(

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

В программе предусмотреть сохранение вводимых данных в файле и возможность чтения из ранее сохраненного файла
Ведомость абитуриентов, сдавших вступительные экзамены в университет, содержит: Ф.И.О., адрес, оценки. Определить количество абитуриентов,...

Сравнение данных из файла
Добрый день. Подскажите пожалуйста, как такое организовать. Есть файл qwe.txt в нем есть содержимое - Привет. Нужно сделать проверку...

Сравнение элементов массива и данных с txt файла
Есть массив string с id пользователей. И текстовый файл с id пользователей. Нужно сравнить элементы массива с каждой строкой...

Ввод структурированных данных в файл и вывод данных из этого файла на экран (сделать хранилище данных в файле)
Здравствуйте) помогите написать программу, осуществляющую ввод структурированных данных в файл и вывод данных из этого файла на экран...

Сравнение ячеек данных Stringgrid и ячейками данных Access
Помогите пожалуйста! Как сравнивать данные ячеек стринггрида и данные базы аксесс типа стринг, и если условие выполняется, то данные из...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
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