PDA

View Full Version : محاسبه اختلاف دو تاريخ شمسي



kohyar
یک شنبه 19 اردیبهشت 1389, 13:54 عصر
سلام دوستان
چطوري مي تونم تعداد روز هاياختلاف دو تاريخ شمسي را محاسبه كنم؟
مثلا اختلاف بين 02/01/89 و 15/03/89 ؟
متشكرم

maxpayn2
یک شنبه 19 اردیبهشت 1389, 15:09 عصر
farsilibrary رو سرچ کن

General-Xenon
دوشنبه 20 اردیبهشت 1389, 04:47 صبح
سلام دوستان
چطوري مي تونم تعداد روز هاياختلاف دو تاريخ شمسي را محاسبه كنم؟
مثلا اختلاف بين 02/01/89 و 15/03/89 ؟
متشكرم

سلام دوست عزیز...
من هم همچین مشکلی داشتم اما اومدم تاریخ رو به روز تبدیل کردم....
89 * 365 = ؟
1 * 30 = ؟
جمع این دوتا با روز یک عددی هستش..
در تاریخ دومت هم همین کارو انجام بده...بعد از هم کم کن....اختلاف دو تاریخ در روز به دست میاد

امیدوارم که بدردت بخوره:چشمک:

* joodi *
دوشنبه 20 اردیبهشت 1389, 13:30 عصر
سلام من از این کد برای محاسبه ی تفاوت دو تاریخ که اولی در arrivalText و دومی در departureText بود
استفاده کردم و جواب گرفتم :




string st = arrivalText.Text.Trim();
string ed = departureText.Text.Trim();
DateTime dt1 = DateTime.ParseExact(st, "dd/MM/yyyy", CultureInfo.CurrentCulture);
DateTime dt2 = DateTime.ParseExact(ed, "dd/MM/yyyy", CultureInfo.CurrentCulture);
TimeSpan diff = dt2.Subtract(dt1);

int days = diff.Days;



موفق باشید.

ali_777
جمعه 28 شهریور 1393, 09:47 صبح
سلام دوست عزیز...
من هم همچین مشکلی داشتم اما اومدم تاریخ رو به روز تبدیل کردم....
89 * 365 = ؟
1 * 30 = ؟
جمع این دوتا با روز یک عددی هستش..
در تاریخ دومت هم همین کارو انجام بده...بعد از هم کم کن....اختلاف دو تاریخ در روز به دست میاد

امیدوارم که بدردت بخوره:چشمک:

سلام. واقعا بدرد منم خورد. آفرین شما کلا مسئله رو با یه دید دیگه ای حل کردی.
من داشتم دنبال ماکرو و Add-ins و کد VBA برای اکسل میگشتم که پست شما رو اینجا دیدم.
بنظر من بهترین روش هم شاید همین باشه. کاملا هم جواب میده. بازم ممنون از پستتون/

elahe471
جمعه 28 شهریور 1393, 10:49 صبح
من معمولا یه تاریخ میلادی میگیرم یه شمسی ، شمسی و نشون میدم ، میلادی هم برای اینجور کارهای محاسباتی استفاده میکنم
مثلا برای این مشکل شما Sqlserver خودش Function داره DateDiff کلی هم حالت داره

fakhravari
جمعه 28 شهریور 1393, 13:19 عصر
TimeSpan همه اختلاف بین 2 ساعت - تاریخ میده.

z.rezaie
چهارشنبه 17 تیر 1394, 19:35 عصر
سلام من از این کد برای محاسبه ی تفاوت دو تاریخ که اولی در arrivalText و دومی در departureText بود
استفاده کردم و جواب گرفتم :




string st = arrivalText.Text.Trim();
string ed = departureText.Text.Trim();
DateTime dt1 = DateTime.ParseExact(st, "dd/MM/yyyy", CultureInfo.CurrentCulture);
DateTime dt2 = DateTime.ParseExact(ed, "dd/MM/yyyy", CultureInfo.CurrentCulture);
TimeSpan diff = dt2.Subtract(dt1);

int days = diff.Days;



موفق باشید.




میشه توضیح بدید CultureInfo.CurrentCulture چی هست؟
من با این خطا مواجه شدم String was not recognized as a valid DateTime

Nika.Neda
جمعه 06 اردیبهشت 1398, 17:48 عصر
سلام و وقت بخير خدمت شما،من عضو سايت شما شدم برا اينكه ميخوام سال ماه روز و دقيقه و ثانيه سالگرد ازدواج رو محاسبه كنم اما نميشه!

علیرضا5
یک شنبه 08 اردیبهشت 1398, 11:12 صبح
خوب سالگرد ازدواج که فقط سالش یه دونه اضافه میشه

بقیش که اصلا محاسبه نمیخاد
همونی که موقع ازدواج بوده مثلا ۳ بعداز ظهر خوب سالگردشم میشه ۳ بعداز ظهر دیگه :بامزه:

علیرضا5
یک شنبه 08 اردیبهشت 1398, 11:12 صبح
خوب سالگرد ازدواج که فقط سالش یه دونه اضافه میشه

بقیش که اصلا محاسبه نمیخاد
همونی که موقع ازدواج بوده مثلا ۳ بعداز ظهر خوب سالگردشم میشه ۳ بعداز ظهر دیگه :بامزه:

paghalat
شنبه 21 اردیبهشت 1398, 02:18 صبح
میتونید از این کد هم استفاده کنید

System.Globalization.PersianCalendar calendar = new System.Globalization.PersianCalendar();

int year = Convert.ToInt16(textBox1.Text.Substring(0, 4));
int month = Convert.ToInt16(textBox1.Text.Substring(5, 2));
int day = Convert.ToInt16(textBox1.Text.Substring(8, 2));


int year1 = Convert.ToInt16(textBox2.Text.Substring(0, 4));
int month1 = Convert.ToInt16(textBox2.Text.Substring(5, 2));
int day1 = Convert.ToInt16(textBox2.Text.Substring(8, 2));


DateTime dt1 = calendar.ToDateTime(year, month, day, 0, 0, 0, 0);
DateTime dt2 = calendar.ToDateTime(year1, month1, day1, 0, 0, 0, 0);
TimeSpan ts = dt2.Subtract(dt1);
int days = ts.Days;
label1.Text = ts.Days.ToString();

محمدجلال حجاز ي فرد
دوشنبه 04 آذر 1398, 18:01 عصر
اين روش در مواردي كارسازي دارد كه سال يكي باشد اما اگر سال ها فرق داشت و بين اين سالها سال كبيسه هم وجود داشت محاسبه با كمي فرق بيد انجام شود ... اما اينكه به چه نحو ميتوان سال يا سالهاي كبيسه بين دو تاريخ را تشخيص داد نميدانم

paghalat
پنج شنبه 07 آذر 1398, 13:12 عصر
اگر تاریخ به فرمت زیر باشه میتونید از این کد هم استفاده کنید
نوع فرمت:1398/09/07


string Testpost;
Testpost = text;
Testpost = Testpost.Replace("/", "");
Testpost = Testpost.Split('.')[0];

text میشه همون تاریخ

که میاد کاراکتر/ از تاریخ حذف میکنه و بعد به عدد به دست میاد که میتونید جمع یا تفریق کنید

mazoolagh
شنبه 09 آذر 1398, 08:16 صبح
اين روش در مواردي كارسازي دارد كه سال يكي باشد اما اگر سال ها فرق داشت و بين اين سالها سال كبيسه هم وجود داشت محاسبه با كمي فرق بيد انجام شود ... اما اينكه به چه نحو ميتوان سال يا سالهاي كبيسه بين دو تاريخ را تشخيص داد نميدانم

الان شما دقیقا چه چیزی رو میخواین محاسبه کنین؟
پرسش و پاسخ های متنوعی مطرح شده و معلوم نیست که شما کدوم رو مد نظر دارین.

ولی اگر منظورتون پست شماره 9 هست که فکر کنم نتونسته منظورش رو درست برسونه، ابشون میخواسته اختلاف جزء به جزء بین دو تاریخ رو محاسبه کنه: مثلا 3 سال و پنج ماه و 12 روز و ...