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

Как определить разделитель в десятичных числах

17.06.2012, 23:09. Показов 8750. Ответов 9
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
подскажите, пожалуйста, код ,который бы определял, что на компьютере принято в качестве разделителя в десятичных числах(точка или запятая), и выдавал бы ошибку при вводе неверного разделителя
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.06.2012, 23:09
Ответы с готовыми решениями:

Определить, какой разделитель из списка был использован
Здравствуйте! Возник вопрос... Есть такой кусочек string split = Str.Split(' ', ',', '.', ':',...

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

Определить количество цифр в введенных числах и вывести на экран сколько цифр в первом и втором числах
ввести 2 числа, определить количество цифр в введеных числах и вывести на экран сколько цифр в...

Как сменить системные параметры: десятичный разделитель и разделитель в дате?
Как сменить системные параметры: 'десятичный разделитель' и 'разделитель в дате'? Подозреваю,...

9
5 / 5 / 1
Регистрация: 10.01.2012
Сообщений: 19
17.06.2012, 23:43 2
http://habrahabr.ru/post/138957/
1
556 / 510 / 25
Регистрация: 23.07.2009
Сообщений: 2,359
Записей в блоге: 1
17.06.2012, 23:47 3
наверное, попробовать этот текст преобразовать в десятичное число, и ловить прерывание. это - прямой путь. в зависимости от currentculture будет восприниматься точка или запятая.
0
0 / 0 / 0
Регистрация: 27.02.2012
Сообщений: 41
18.06.2012, 12:32  [ТС] 4
если число вводится в textBox1, то как ловить прерывание и поменять на нужный разделитель?
C#
1
2
3
4
5
6
try { p=(double)Convert.toDouble(textBox1.text); }
            catch (IOException exc) 
            {
                 // что нужно здесь написать?
                
            }
0
Эксперт Java
4093 / 3827 / 745
Регистрация: 18.05.2010
Сообщений: 9,331
Записей в блоге: 11
18.06.2012, 13:25 5
А что вы хотите чтобы программа делала, когда произошла ошибка, то и нужно писать.
И с чего вы взяли, что будет бросаться IOException? При неправильном формате будет бросаться FormatException. См. msdn
0
556 / 510 / 25
Регистрация: 23.07.2009
Сообщений: 2,359
Записей в блоге: 1
18.06.2012, 15:14 6
Цитата Сообщение от turbanoff Посмотреть сообщение
А что вы хотите чтобы программа делала, когда произошла ошибка, то и нужно писать.
И с чего вы взяли, что будет бросаться IOException? При неправильном формате будет бросаться FormatException. См. msdn
чего ходить в msdn? ввести что не положено и посмотреть что выскочит.
0
Эксперт Java
4093 / 3827 / 745
Регистрация: 18.05.2010
Сообщений: 9,331
Записей в блоге: 11
18.06.2012, 17:30 7
Цитата Сообщение от novi4ok Посмотреть сообщение
чего ходить в msdn? ввести что не положено и посмотреть что выскочит.
Например там можно прочитать, что бросается не только FormatException, но и OveflowException.
Вы бы точно проверили, что выдает метод на очень больших/маленьких числах? Очень, сомневаюсь.
PS. самый лучший способ - смотреть исходники.
0
556 / 510 / 25
Регистрация: 23.07.2009
Сообщений: 2,359
Записей в блоге: 1
18.06.2012, 17:51 8
Цитата Сообщение от juliamosus Посмотреть сообщение
C#
1
try { p=(double)Convert.toDouble(textBox1.text); }
а зачем приведение? разве toDouble() что-то другое выдает?
0
0 / 0 / 0
Регистрация: 27.02.2012
Сообщений: 41
18.06.2012, 23:22  [ТС] 9
сделала так:
C#
1
2
Char separator = System.Globalization.CultureInfo.CurrentCulture.NumberFormat.NumberDecimalSeparator[0];            
double P = Convert.ToDouble(textBox1.Text.Replace(',', separator)); //если в textBox1 число с ','
0
556 / 510 / 25
Регистрация: 23.07.2009
Сообщений: 2,359
Записей в блоге: 1
19.06.2012, 00:23 10
а если число с точкой, а по культуре положено запятую, что будет делать твой код?
0
19.06.2012, 00:23
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
19.06.2012, 00:23
Помогаю со студенческими работами здесь

Как определить используемый разделитель строк
Здравствуйте все! Столкнулся с такой проблемой. Есть документ, в нём рт-поле (многострочный...

Как определить разделитель CSV-файла?
Как определить разделитель CSV-файла? Мое VB-приложение создает csv-file, который может быть потом...

Как определить разделитель десятичной дроби (decimal separator) Visual C++ 2008
И сразу ответ: String ^Separator =...

Как в Excel 2000 определить - какой разделитель целой/дробной части ?
Вопрос, собстно, в subj. Для Экселя 2002 есть Application.DecimalSeparator, это я нашел. А вот в...


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

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