angel 2 Ответов: 8

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


У меня есть два текстовых поля, в которых я храню даты из календаря. У меня есть третье текстовое поле, в котором я хочу сохранить количество дней после вычисления разницы между двумя датами в c#.
Как я могу это сделать? Плз помогите.

Спасибо.

[no name]

Вы вычитаете одно из другого, а затем отобразите результат в третьем. А как еще ты думаешь?

8 Ответов

Рейтинг:
2

Aadhar Joshi

Это можно легко сделать с помощью объекта типа "TimeSpan". Например: предположим, что мы хотим знать количество дней между максимальными. и мин. значения для типа DateTime и показать его в окне консоли, то я могу написать что-то вроде:

DateTime d1=DateTime.MinValue;
DateTime d2=DateTime.MaxValue;
TimeSpan span=d2-d1;
Console.WriteLine( "There're {0} days between {1} and {2}" , span.TotalDays, d1.ToString(), d2.ToString() );


Рейтинг:
2

Mits Machhi

попробовать это:

IFormatProvider theCultureInfo = new System.Globalization.CultureInfo("en-GB", true);
DateTime from_date = DateTime.ParseExact(txt_from_date.Text, "dd/MM/yyyy", theCultureInfo);
DateTime to = DateTime.ParseExact(txt_to_date.Text, "dd/MM/yyyy", theCultureInfo);
txt_total_days.Text = ((to - from_date).TotalDays).ToString();


если у любого problm, пожалуйста пост.


Mohamed Mitwalli

Привет Митс
DateTime.Compare это для сравнения двух дат , и он вернет 1 или -1 , если первая дата раньше второй вернет -1
и наоборот

[no name]

Спасибо, моя ошибка .. Извините 4 thattt и я обновляю свой ответ....

Рейтинг:
1

Manas Bhardwaj

Какие-нибудь усилия до сих пор? Гугл[^] имеет чертовски много тем на эту тему.

Вот некоторые из них:

http://www.dotnetspider.com/resources/458-How-find-difference-between-two-Dates-C-or.aspx[^]

http://msdn.microsoft.com/en-us/library/8ysw4sby.aspx[^]

В принципе, вам нужно использовать промежуток[^].


Mohamed Mitwalli

5+

Manas Bhardwaj

спасибо!

Рейтинг:
1

Aadhar Joshi

Предположим, что ваши даты называются началом и концом.
DateTime start = new DateTime(2009, 6, 14);
DateTime end = new DateTime(2009, 12, 14);

Мы установили наши даты до 14 июня 2009 года и 14 декабря 2009 года.

Теперь давайте найдем разницу между ними. Для этого мы создаем временной интервал:
Разница во времени = конец-начало;

С помощью этого объекта TimeSpan вы можете выразить разницу во времени многими различными способами. Однако вы специально спросили о разнице в днях, так что вот как вы можете это получить:
Приставка.WriteLine ("разница в днях:" + разница.Дни);

Таким образом, свойство называется TimeSpan.Days.


Рейтинг:
1

Member 9117591

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

DateTime dt1=Convert.ToDateTime(Textbox1.text);
DateTime dt1=Convert.ToDateTime(Textbox1.text);
TimeSpan ts=dt.subtract(dt1);
int NoOfDays=dt.Days;
textbox3.text=NoOfDays;


Рейтинг:
0

Devang Vaja

Мисс ангел пожалуйста попробуйте Гугл прежде чем вы опубликуете вопрос я даю две ссылки

[^]

и

http://msmvps.com/blogs/gaidar/archive/2005/09/06/65514.aspx[^]
Вы также можете найти больше


Member 11036620

я хочу разницу между 2 календарями в программе c# и хранить в метке

Рейтинг:
0

Kaushik Saha from Kolkata,India

Может быть, это вам поможет.

DateTime dt1=Convert.ToDateTime(TextBox1.Text);
DateTime dt2=Convert.ToDateTime(TextBox2.Text);
TextBox3.Text=""+((dt1>dt2)?(dt1-dt2).TotalDays:(dt2-dt1).TotalDays);


Счастливое Кодирование


Рейтинг:
0

subhankar jana

private void button1_Click(object sender, EventArgs e)
        {
            TimeSpan m1stDate = dTP1.Value- dTP2.Value;
            textBox1.Text = m1stDate.ToString();
        }


CHill60

К сожалению, это даже не компилируется ... если, конечно, вы не измените текстовые поля OPs на datetimepickers - что не по теме. Она также была эффективно решена год назад.