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
কাজে লাগে।
আরও দেখুন
- .NET API ডকুমেন্টেশন এর
DateTime
TimeSpan
এর প্রবর্তন- Microsoft এর
DateTime
এবংDateTimeOffset
এর জন্য সেরা অনুশীলন - Noda Time ডকুমেন্টেশন: https://nodatime.org