Форум программистов, компьютерный форум, киберфорум
Наши страницы

C# для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Shadevskiy
5 / 5 / 8
Регистрация: 25.01.2015
Сообщений: 205
#1

Какой класс использовать для представления времени - C#

26.11.2015, 16:35. Просмотров 525. Ответов 22
Метки нет (Все метки)

Мне нужно расписание сделать. Можно ,конечно, через дабл 13.30 , но как-то не по госту, наверное. Стринг ругается , если я вписываю 13:30, что использовать,ребят?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.11.2015, 16:35
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Какой класс использовать для представления времени (C#):

Класс для представления времени, предусмотреть возможности установки времени и изменения его отдельных полей - C#
Составить описание класса для представления времени. Предусмотреть возможности установки времени и изменения его отдельных полей (час,...

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

Какой класс использовать для парса json? - C#
Здравствуйте, нужно как то спарсить json, на соседнем форуме посоветовали использовать вот такие вот классы: public class...

Составить описание класса для представления времени - C#
Составить описание класса для представления времени в 24-часовом формате. Разработать методы установки даты и отдельных ее полей (часы,...

Составить описание класса для представления времени - C#
Как записать в C#,просто только начал изучать этот язык,а разобраться никак не могу.Вот прога: Составить описание класса для...

Составить описание класса для представления времени - C#
Составить описание класса для представления времени. Предусмотреть возможности установки времени и изменения его отдельных полей (час,...

22
OwenGlendower
Модератор
Эксперт .NET
7930 / 6899 / 2564
Регистрация: 17.03.2014
Сообщений: 13,529
Записей в блоге: 1
26.11.2015, 16:40 #2
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Shadevskiy, используй TimeSpan.
1
Shadevskiy
5 / 5 / 8
Регистрация: 25.01.2015
Сообщений: 205
26.11.2015, 16:44  [ТС] #3
А как она работает? Т.е у меня есть некое число инт/дабл, а он его во время переводит. А каким образом? Допустим, мне нужно, чтобы было 11:47
0
Даценд
Модератор
Эксперт .NET
3698 / 3570 / 1822
Регистрация: 20.04.2015
Сообщений: 6,549
26.11.2015, 18:15 #4
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Shadevskiy,
Можно и DateTime воспользоваться:
C#
1
2
3
4
5
6
int hours = 11;
int minutes = 47;
DateTime dt = new DateTime();
dt = dt.AddHours(hours);
dt = dt.AddMinutes(minutes);
Console.WriteLine(dt.ToShortTimeString());
1
OwenGlendower
Модератор
Эксперт .NET
7930 / 6899 / 2564
Регистрация: 17.03.2014
Сообщений: 13,529
Записей в блоге: 1
26.11.2015, 18:22 #5
Цитата Сообщение от Даценд Посмотреть сообщение
Можно и DateTime воспользоваться:
Если нужно хранить только время, то лучше так не делать чтобы не создавать путаницу.
1
Shadevskiy
5 / 5 / 8
Регистрация: 25.01.2015
Сообщений: 205
26.11.2015, 18:50  [ТС] #6
Я пробовал через Датетайм, но не знаю,как в массив занести, а мне потом время сравнить нужно
Время вписываю через таблицу
C#
1
2
3
4
5
6
7
8
9
10
11
12
ouble[,] GR = new double[graphSize, graphSize];
            {
                for (int i = 0; i < graphSize; i++)
                {
                    for (int j = 0; j < graphSize; j++)
                    {
                        try
                        {
                            var bremya = DateTime.Parse(dataGridView1[j, i].Value.ToString());
                            
 
                            GR[i, j] = bremya;
0
OwenGlendower
Модератор
Эксперт .NET
7930 / 6899 / 2564
Регистрация: 17.03.2014
Сообщений: 13,529
Записей в блоге: 1
26.11.2015, 18:53 #7
Shadevskiy, тебя не смущает что массив имеет тип double, а записать в него ты пытаешься DateTime?
1
Shadevskiy
5 / 5 / 8
Регистрация: 25.01.2015
Сообщений: 205
26.11.2015, 18:56  [ТС] #8
Не то слово. Меня это очень долго смущает...Но мне надо их как-то сравнить
0
OwenGlendower
Модератор
Эксперт .NET
7930 / 6899 / 2564
Регистрация: 17.03.2014
Сообщений: 13,529
Записей в блоге: 1
26.11.2015, 18:58 #9
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Shadevskiy, бери и сравнивай:
C#
1
2
3
4
5
6
DateTime d1 = new DateTime(1990, 1, 1);
DateTime d2 = new DateTime(1990, 2, 1);
if (d2 > d1)
{
    // ...
}
Аналогично можно работать и с TimeSpan.
1
Shadevskiy
5 / 5 / 8
Регистрация: 25.01.2015
Сообщений: 205
26.11.2015, 19:01  [ТС] #10
А как занести в массив? Я же не могу для каждой даты создавать свою переменную
0
OwenGlendower
Модератор
Эксперт .NET
7930 / 6899 / 2564
Регистрация: 17.03.2014
Сообщений: 13,529
Записей в блоге: 1
26.11.2015, 19:02 #11
Shadevskiy, ты издеваешься? Массивы для любого типа объявляются одинаково.
C#
1
2
3
DateTime[] dates = new DateTime[2];
dates[0] = new DateTime(1990, 1, 1);
dates[1] = new DateTime(1990, 2, 1);
1
Shadevskiy
5 / 5 / 8
Регистрация: 25.01.2015
Сообщений: 205
26.11.2015, 19:04  [ТС] #12
Вы меня не любите, да?
0
OwenGlendower
26.11.2015, 19:06
  #13

Не по теме:

Shadevskiy, нет. Просто ты задаешь глупые вопросы. Если обидел, извини.

0
Даценд
Модератор
Эксперт .NET
3698 / 3570 / 1822
Регистрация: 20.04.2015
Сообщений: 6,549
26.11.2015, 19:13 #14
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от OwenGlendower Посмотреть сообщение
Если нужно хранить только время, то лучше так не делать чтобы не создавать путаницу.
А что здесь может запутать. Если создаем DateTime с пустым конструктором, а затем добавляем часы и минуты, то получим '01.01.1900 часы:минуты'. Все значения с одной датой и разным временем.
Для самоуспокоения можно другой конструктор использовать:
C#
1
2
3
4
5
int hours = 11;
int minutes = 47;
DateTime dt = new DateTime(1900, 01, 01, hours, minutes, 0);
DateTime[,] dtArray = new DateTime[5, 5];
dtArray[0, 0] = dt;
1
Woldemar89
TheGreatCornholio
848 / 592 / 186
Регистрация: 30.07.2015
Сообщений: 2,128
Завершенные тесты: 1
26.11.2015, 19:22 #15
Цитата Сообщение от Shadevskiy Посмотреть сообщение
Вы меня не любите, да?
Не обязаны, это уж точно. Уважать, да - исходя, из правил форума.

Но и к тебе это тоже относится, - поэтому советую, из уважения к форумчанам -
для начала, изучить базу, дабы совсем дилетантских вопросов не задавать.

Литература по C# для начинающих и не только
FAQ для студентов или школьников
0
26.11.2015, 19:22
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.11.2015, 19:22
Привет! Вот еще темы с ответами:

Составить описание класса для представления времени - C#
Составить описание класса для представления времени. Предусмотреть возможности установки времени и изменения его отдельных полей (час,...

Составить описание класса для представления времени. Ошибка - C#
Составить описание класса для представления времени. Предусмотреть возможности установки времени и изменения его отдельных...

Класс для представления хэширования в строку - C#
Покажите, как правильно реализовать

Класс для представления цветных точек - C#
Вот интересно, разные классы создавать впринципе реально, но вот как описать класс для представления цветных точек, которые должны...


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

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.