ভবিষ্যত বা অতীতের তারিখ গণনা করা

C#:
ভবিষ্যত বা অতীতের তারিখ গণনা করা

কিভাবে:

ভবিষ্যতের তারিখ হিসেব করা:

using System;

class DateExample
{
    static void Main()
    {
        DateTime currentDate = DateTime.Now;
        TimeSpan oneWeek = TimeSpan.FromDays(7);
        
        DateTime nextWeek = currentDate + oneWeek;
        Console.WriteLine($"এখন থেকে এক সপ্তাহ পর: {nextWeek}");
    }
}

আউটপুট:

এখন থেকে এক সপ্তাহ পর: <বর্তমান তারিখ থেকে এক সপ্তাহ পরের তারিখ>

অতীতের তারিখ হিসেব করা:

using System;

class DateExample
{
    static void Main()
    {
        DateTime currentDate = DateTime.Now;
        TimeSpan tenDaysAgo = TimeSpan.FromDays(-10);
        
        DateTime pastDate = currentDate + tenDaysAgo;
        Console.WriteLine($"দশ দিন আগে ছিল: {pastDate}");
    }
}

আউটপুট:

দশ দিন আগে ছিল: <বর্তমান তারিখ থেকে দশ দিন আগের তারিখ>

গভীর ডুব

C#-এ, DateTime এবং TimeSpan হল তারিখ এবং সময় অপারেশনের জন্য মুখ্য উপকরণ। DateTime একটি মুহূর্তকে প্রকাশ করে, সাধারণত একটি তারিখ এবং দিনের সময় হিসেবে ব্যক্ত করা হয়। TimeSpan একটি সময় অন্তরালকে প্রকাশ করে।

ঐতিহাসিকভাবে, তারিখ এবং সময়ের হিসেবনিকেশে দিন, মাস এবং লিপ বছরের ম্যানুয়াল হ্যান্ডলিং এর ফলে ভুল হওয়ার সম্ভাবনা ছিল। DateTime এই জটিলতাগুলি সরলীকৃত করে, ফ্রেমওয়ার্ককে কঠিন অংশগুলি সামাল দিতে দেয়।

.NET-এ DateTime এবং TimeSpan এর বিকল্পগুলির মধ্যে DateTimeOffset রয়েছে, যা একটি সময় জোন অফসেট অন্তর্ভুক্ত করে, যার ফলে বিভিন্ন সময় অঞ্চলে কাজ করা অ্যাপ্লিকেশনগুলির জন্য এটি ভালো। অন্য একটি বিকল্প হল Noda Time, জন Skeet দ্বারা ডিজাইন করা একটি লাইব্রেরি যা বিভিন্ন ক্যালেন্ডারের মত আরও জটিল তারিখ এবং সময় হ্যান্ডলিং এর জন্য তৈরি।

বাস্তবায়নের দিক থেকে, যখন আপনি একটি DateTime এর সঙ্গে একটি TimeSpan যোগ করেন, অন্তর্নিহিতভাবে, এটি টিকের মাধ্যমে ম্যানিপুলেশন করে, .NET-এর সময়ের মৌলিক একক (1 টিক = 100 ন্যানোসেকেন্ড)। অতীতের তারিখের জন্য, একটি নেগেটিভ TimeSpan কাজে লাগে।

আরও দেখুন