آموزش کار با تقویم شمسی در سی شارپ با استفاده از کتابخانه های NuGet
0 0

آموزش کار با تقویم شمسی در سی شارپ با استفاده از کتابخانه های NuGet


آموزش کار با تقویم شمسی در سی شارپ با استفاده از کتابخانه های NuGet

آموزش کار با تقویم شمسی در سی شارپ

تعیین تاریخ شمسی و از آن مهم تر تعیین روزها و ماه های سال به نوشتار فارسی همواره یکی از مشکلات برنامه نویسان تازه کار است، در این پست قصد داریم یکی از کتابخانه های تقویم شمسی در مخزن NuGet را معرفی کنیم.

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

  • تبدیل تاریخ میلادی به شمسی
  • تعیین روزهای هفته (شنبه،یکشنبه و ...)
  • تعیین ماه های سال (فروردین، اردیبهشت و...)
  • بدست آموردن فقط تاریخ به صورتی عددی
  • بدست آوردن ساعت
  • تبدیل تاریخ شمسی به میلادی

این کتابخانه شامل کلاسی به نام PersianDateTime است. که برنامه نویسان را قادر به استفاده از ان در مقابل ساختار System.DateTime می نماید. همچنین PersianDateTime در برگیرنده بسیاری از متدها و خصیصه های متداول ساختار از قبیل DateTime و DateTime.TimeOfDay می باشد.

برای نصب این کتابخانه می توانید از سایت NuGet آن را دانلود کنید و یا در ویژوال استادیو به منوی Tools  بروید و از طریق زیر منوی NuGet Package Manager گزینه Package Manage Console را انتخاب کنید.

آموزش کار با تقویم شمسی در سی شارپ

بعد از باز شدن کنسول NuGet ،  دستور Install-Package PersianDateTime را تایپ کنید و کلید اینتر را فشار دهید.

آموزش کار با تقویم شمسی در سی شارپ

خصیصه PersianDateTime.Now یک شی از کلاس PersianDateTime را با قابلیت تاریخ کامل جلالی را بر می گرداند.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace IranganjPersianDateTime
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine(PersianDateTime.Now);
            
            Console.ReadKey();
        }
    }
}

آموزش کار با تقویم شمسی در سی شارپ

همان طور که در کدهای زیر مشاهده می کنید. شی از کلاس PersianDateTime نمونه برداری شده است، سپس آن را با خصیصه  PersianDateTime.Now مقدار دهی نمودایم. در پایان با استفاده از متد ToString()  تاریخ و  PersianDateTimeFormat.Date را به رشته متنی تبدیل کردیم و فقط تاریخ را نمایش داده ایم.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace IranganjPersianDateTime
{
    class Program
    {
        static void Main(string[] args)
        {
            
            PersianDateTime persianDateTime = PersianDateTime.Now;

            Console.WriteLine(persianDateTime.ToString(PersianDateTimeFormat.Date));

            Console.ReadKey();
        }
    }
}

در زیر تاریخ را به صورت قالب دلخواه نمایش داده ایم.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace IranganjPersianDateTime
{
    class Program
    {
        static void Main(string[] args)
        {
            
            PersianDateTime persianDateTime = PersianDateTime.Now;

            Console.WriteLine(persianDateTime.ToString("dddd d MMMM yyyy ساعت hh:mm:ss tt"));

            Console.ReadKey();
        }
    }
}

نمایش زمان

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace IranganjPersianDateTime
{
    class Program
    {
        static void Main(string[] args)
        {
            
            PersianDateTime persianDateTime = PersianDateTime.Now;

            Console.WriteLine(persianDateTime.TimeOfDay);

            Console.ReadKey();
        }
    }
}

تبدیل تاریخ شمسی و میلادی

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace IranganjPersianDateTime
{
    class Program
    {
        static void Main(string[] args)
        {
            
            PersianDateTime persianDateTime = PersianDateTime.Parse("1394/12/06");

            DateTime dateTime = persianDateTime.ToDateTime();

            Console.WriteLine(dateTime);

            Console.ReadKey();
        }
    }
}

در مثال زیر 5 روز به تاریخ مورد نظر اضافه کردیم و نمایش داده ایم.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace IranganjPersianDateTime
{
    class Program
    {
        static void Main(string[] args)
        {
            
            PersianDateTime persianDateTime = PersianDateTime.Parse("1394/12/06");

            PersianDateTime newdate = persianDateTime.AddDays(5);

            Console.WriteLine(newdate);

            Console.ReadKey();
        }
    }
}

در مثال زیر دو تاریخ را از هم کم کرده ایم.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace IranganjPersianDateTime
{
    class Program
    {
        static void Main(string[] args)
        {
            
            PersianDateTime persianDateTime = PersianDateTime.Parse("1394/12/06");

            PersianDateTime newdate = persianDateTime.AddDays(5);

            TimeSpan timeSpan = newdate - persianDateTime;

            Console.WriteLine(timeSpan);

            Console.ReadKey();
        }
    }
}

 

دانلود

نویسنده علی بهارلویی
گروه مطلب C#.Net
نوع مطلب سورس کد و آموزش
تاریخ انتشار ۶ اسفند ۱۳۹۴
منبع ایران گنج
تعداد نظرات ۰
قیمت کاربران عضو سایت
توضیح توجه:
  • زمانی که روی لینک دانلود کلیک می کنید لینک دانلود به مدت 24 ساعت معتبر خواهد بود
  • لینک های دانلود دوره های آموزشی تا پایان دوره قابل دانلود می باشد.
  • برای خارج کردن فایل ها از حالت فشرده از ورژن جدید نرم افزار winrar استفاده کنید.
  • برای خارج کردن فایل ها از حالت فشرده لینک های دانلودی که چندین قسمت می باشند فقط قسمت اول را از حالت فشرده خارج کنید.
  • لطفا توضیحات نوشته شده برای مطالب را با دقت بخوانید.
  • برای نمایش فیلم ها می توانید از نرم افزار هایی مانند Km Player , VLC Player یا Media Player Classic استفاده کنید.

نظر / سوال

Captcha