Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.05.2022, 13:28   #1
REZR
Пользователь
 
Регистрация: 05.04.2022
Сообщений: 26
По умолчанию реализовать класс.

У меня есть код, но его надо сделать как класс.
Код чат бот с выводом на форму.
dell- лейбл
Send- текст бокс, где я спрашиваю у бота
button1- кнопка чтобы спросить
Rem- текстбокс чтобы запомнить ели бот не знает ответ на этот вопрос
button2- кнопка запомнить
Ответы сохраняются в текстовом файле.
Сам код
Код:
namespace ChatBoto
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
 
        private void button1_Click(object sender, EventArgs e) // кнопка спросить
        {
            string path = "Boto.txt"; // путь файла     
            string DB = File.ReadAllText(path); // считать весь текст базы
            string quest = Send.Text; // получем текст от пользователя
            if (Regex.IsMatch(DB, quest)) // если слово найдено
            {
                string[] lines = File.ReadAllLines(path);
                foreach (string line in lines)
                    if (Regex.IsMatch(line, quest))
                    {
                        Say(path, line); // отвечаем
                    }
            }
            else
            {
                Remember(); // или запоминаем
            }
        }
        private void Say(string path, string answer) // ищет нужное слово
        {
            using (FileStream fs = new FileStream(path, FileMode.OpenOrCreate)) // открыть поток файлов
            using (StreamReader sw = new StreamReader(fs)) // открыть считывание файла
            {
                int cout = 0;
                cout = answer.IndexOf(": ");
                dell.Text = "Boto :" + answer.Substring(cout + 2); // отвечаем
 
            }
        }
        private void Remember() // показывает текст бокс и кнопку запомнить
        {
            dell.Text = "Boto : я не знаю как ответить"; // сигнал записи
            Rem.Visible = true; // текстовое поле видно
            button2.Visible = true; // кнопка записи видно
            button1.Visible = false; //кнопка общения не видна
            Send.Visible = false; // текстовое поле общение не видно
 
        }
 
        private void button2_Click(object sender, EventArgs e) // кнопка запомнить
        {
            string path = "Boto.txt"; // путь файла
            string quest = Send.Text; // получить текст от пользователя
            string trueAns = Rem.Text; // правельный ответ
            using (FileStream fs = new FileStream(path, FileMode.Append)) // открыть поток файла
            using (StreamWriter sw = new StreamWriter(fs)) // открыть запись файла
            {
                sw.WriteLine(quest + ": " + trueAns); // записываем
            }
            Rem.Visible = false; // текстовое поле не видно
            button2.Visible = false; // кнопка записи не видно
            button1.Visible = true; // кнопка общения видно
            Send.Visible = true; // текстовое поле общение видно
            dell.Text = "Boto : Я запомнил"; // сигнал записи
        }
    }
}
REZR вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Реализовать класс для матриц. В этом классе реализовать интерфейс, содержащий методы для выполнения Wexley Помощь студентам 0 07.12.2016 12:13
Реализовать класс. Neotwalker Помощь студентам 0 06.06.2016 19:28
Реализовать класс! ВЕчная ПОмощь Общие вопросы C/C++ 5 17.03.2016 19:45
Реализовать класс. Neotwalker Помощь студентам 0 01.03.2016 16:21
Реализовать класс с именем "Stroki". Реализовать в нём возможность <Поиска и замены фрагмента> Olgazag C# (си шарп) 0 12.12.2013 11:09