Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/15: Рейтинг темы: голосов - 15, средняя оценка - 4.73
0 / 0 / 0
Регистрация: 21.08.2017
Сообщений: 19
1

Нужно исправить ошибки

21.08.2017, 22:09. Показов 2811. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
C#
1
2
3
4
5
            var names = new HashSet<string>(System.IO.File.ReadAllLines(@"C:/fileName.txt"));
            foreach (var process in System.Diagnostics.Process.GetProcesses().Where(p => names.Contains(p.ProcessName)).ToArray())
            {
                process.Kill();
            }
Код закрывает процессы из txt файла, тоже тут где-то на форуме было. И вопрос совпадает, нужно закрыть explorer который записан в txt. Надо сделать так чтоб этот код производился 2 раза, или чтоб он просто мог закрыть explorer который будет записан в txt.

C#
1
2
3
             {
                File.Copy(textBox2.Text+"/papka1/nachalo_faila_"+textBox1.Text+".png", textBox2.Text+"/papka2/nachalo_faila_"+textBox1.Text+".png", true);
             }
Код копирует файл по номеру - например файл который расположен в (путь что указан в textBox2) + /papka1/ (nachalo_faila_001.png) копируется в (путь что указан в textBox2) + /papka2/ (nachalo_faila_001.png). Дело в том что нужно вводить 001 чтоб скопировать nachalo_faila_001.png в другую папку, а иначе ошибка. Таких файлов 100 (соответственно 001-100). Нужно чтоб вводить не 001, а просто 1 и тогда он копировал 001. Ну и далее соответственно - 5=005,60=060,100=100.
И вот в этом же коде нужно запретить ввод букв и символов, оставить доступным только ввод цифр.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.08.2017, 22:09
Ответы с готовыми решениями:

Нужно исправить ошибки и разобраться начинающему
Только начал изучение языка C#, попытался написать код, который бы принимал число а от пользователя...

Пароль. Задание сделано, но нужно исправить некоторые ошибки
Ввод идентификатора пользователя с клавиатуры. Данный идентификатор представляет собой...

Нужно исправить ошибки в классе "Triangle"
using System; using System.Collections.Generic; using System.Linq; using System.Text; public...

Нужно исправить ошибки
отдал работу а мне написали: только зачем тебе List&lt;Student&gt; students; и public Student...

6
325 / 304 / 173
Регистрация: 16.11.2010
Сообщений: 1,069
Записей в блоге: 9
22.08.2017, 06:51 2
Цитата Сообщение от Dasha_1 Посмотреть сообщение
Дело в том что нужно вводить 001 чтоб скопировать nachalo_faila_001.png в другую папку, а иначе ошибка. Таких файлов 100 (соответственно 001-100). Нужно чтоб вводить не 001, а просто 1 и тогда он копировал 001. Ну и далее соответственно - 5=005,60=060,100=100.
Цитата Сообщение от Dasha_1 Посмотреть сообщение
И вот в этом же коде нужно запретить ввод букв и символов, оставить доступным только ввод цифр.
C#
1
2
3
            int ss;
            if (Int32.TryParse(textBox1.Text, out ss)) { textBox1.Undo(); return; }
            string f = ss.ToString("D3");//делаем из 1 -> "001"
Этот код на событие TextChanged текстбокса. Если введен символ, не конвертирующися в int, Undo его уберет.
0
0 / 0 / 0
Регистрация: 21.08.2017
Сообщений: 19
22.08.2017, 07:56  [ТС] 3
netBool, Это я уже решила через keypress. Оууу. Сейчас проверю. Я сначала подумала что это вы ответили на второй вопрос - про ввод цифр.
C#
1
2
3
4
5
6
7
{
            char numnly = e.KeyChar;
            if (!char.IsDigit(numnly) && numnly !=8)
            {
                e.Handled = true;
            }
        }
Добавлено через 17 минут
netBool, Там ошибка в коде на textBox1.Undo() - среда выполнения отказалась вычислять выражение. И текст вводится не с первого раза (со второго) а после программа крашится. Если по поводу цифр уже решила на keypress, как нибудь можно просто сделать из 1 в 001?
0
325 / 304 / 173
Регистрация: 16.11.2010
Сообщений: 1,069
Записей в блоге: 9
22.08.2017, 08:15 4
Цитата Сообщение от Dasha_1 Посмотреть сообщение
как нибудь можно просто сделать из 1 в 001?
Я же написал
C#
1
ss.ToString("D3");
0
0 / 0 / 0
Регистрация: 21.08.2017
Сообщений: 19
22.08.2017, 08:22  [ТС] 5
netBool, А как же присвоить значение для ss; ?
0
325 / 304 / 173
Регистрация: 16.11.2010
Сообщений: 1,069
Записей в блоге: 9
22.08.2017, 09:02 6
Лучший ответ Сообщение было отмечено Dasha_1 как решение

Решение

Цитата Сообщение от Dasha_1 Посмотреть сообщение
netBool, Там ошибка в коде на textBox1.Undo() - среда выполнения отказалась вычислять выражение. И текст вводится не с первого раза (со второго) а после программа крашится. Если по поводу цифр уже решила на keypress, как нибудь можно просто сделать из 1 в 001?
По сему вопросу прошу прощения. Действительно крашится. Я даже озадачился. На рабочем проекте работает, а тут ошибка. Оказалось там RichTextBox, а не обычный текстбокс. Так вот в риче все работает
C#
1
2
3
4
5
6
        int ss = 0;
        private void richTextBox1_TextChanged(object sender, EventArgs e)
        {
            if (!Int32.TryParse(richTextBox1.Text, out ss)){ richTextBox1.Undo(); return;}
            MessageBox.Show(ss.ToString("D3"));
        }
Не знаю, почему в textBox-е не работает. Возможно textBox как-то коряво отрабатывает Undo

В принципе, ваш способ через char.IsDigit в кейпресс тоже нормальный, так, как правило, и делают

Добавлено через 21 минуту
Цитата Сообщение от Dasha_1 Посмотреть сообщение
netBool, А как же присвоить значение для ss; ?
C#
1
int ss = Convert.ToInt32(textBox1.Text);
или как в моем примере
C#
1
Int32.TryParse(TextBox1.Text, out ss)
Можно еще так:
C#
1
int ss = int.Parse(textBox1.Text);
ну и так далее..
1
0 / 0 / 0
Регистрация: 21.08.2017
Сообщений: 19
22.08.2017, 10:29  [ТС] 7
netBool, Чуть чуть переделала под свои нужды, но в общем спасибо вам большое)
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
        private void textBox1_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.Enter)
            {
                int ss = 0;
                if (!Int32.TryParse(textBox1.Text, out ss)) { textBox1.Undo(); return; }
                string pre = ss.ToString("D3");
                {
 
                    File.Copy(textBox2.Text + "/Papka1/Nachalo_faila_" + pre + ".png", textBox2.Text + "/Papka2/Nachalo_faila_" + pre + ".vpk", true);
                    textBox1.ForeColor = Color.Black;
                    textBox1.Text = "";
                    textBox1.Enter -= textBox1_Enter;
 
                }
            }
        }
Только теперь ругается что время срабатывания 0.832мс (что в общем-то не критично, но останавливает выполнение программы из visual studio). Это в visual studio игнорировать можно?
0
22.08.2017, 10:29
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.08.2017, 10:29
Помогаю со студенческими работами здесь

Нужно исправить ошибки в POST запросе
Есть сайт уже 2ю неделю пишу автоотправщик файла((((. Не знаю или нужен ШТМЛ. &lt;p&gt; &lt;label...

нужно исправить ошибки
Здравствуйте, почему у меня не работает код программы? Вот идет создание и заполнение таблиц ...

Нужно исправить ошибки
#include &lt;iostream&gt; #include &lt;string&gt; #include &lt;sstream&gt; #include &lt;algorithm&gt; #include...

Нужно исправить ошибки
Написать программу, которая пересчитывает скорость ветра из &quot;метров в секунду&quot; в &quot;километров в...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru