তারিখকে স্ট্রিং এ রূপান্তর করা

C:
তারিখকে স্ট্রিং এ রূপান্তর করা

কিভাবে:

এর জন্য <time.h> লাইব্রেরি থেকে strftime ফাংশনটি সাধারণত ব্যবহৃত হয়। এটি আপনাকে বিভিন্ন উপায়ে তারিখ এবং সময়কে ফরম্যাট করতে দেয় ফরম্যাট স্পেসিফায়ার নির্দিষ্ট করে। এখানে একটি দ্রুত উদাহরণ দেওয়া হলো:

#include <stdio.h>
#include <time.h>

int main() {
    char dateStr[100];
    time_t now = time(NULL);
    struct tm *ptm = localtime(&now);

    // তারিখ এবং সময়ের স্ট্রিং কনভার্ট করুন (যেমন, "Wed Jun 30 21:49:08 2021")
    strftime(dateStr, sizeof(dateStr), "%a %b %d %H:%M:%S %Y", ptm);
    
    printf("বর্তমান তারিখ ও সময়: %s\n", dateStr);
    return 0;
}

নমুনা আউটপুট দেখতে পাবেন এরকম:

বর্তমান তারিখ ও সময়: Wed Jun 30 21:49:08 2021

আপনি strftime-এ পাস করা ফরম্যাট স্পেসিফায়ারগুলি পরিবর্তন করে ফর্ম্যাটটি কাস্টমাইজ করতে পারেন। উদাহরণস্বরূপ, তারিখটি YYYY-MM-DD ফরম্যাটে পেতে আপনাকে " %Y-%m-%d" ব্যবহার করতে হবে।

গভীর ডাইভ

strftime ফাংশন এবং <time.h> লাইব্রেরি সি স্ট্যান্ডার্ড লাইব্রেরির অংশ, যা মূল ANSI সি স্ট্যান্ডার্ড (C89/C90) এ ফিরে আসে। অনেক প্ল্যাটফর্ম জুড়ে সমর্থিত এবং সোজা হওয়া সত্ত্বেও, এই পদ্ধতিটি আধুনিক প্রোগ্রামিং ভাষা দ্বারা প্রদত্ত আরো সহজবোধ্য তারিখ ও সময় লাইব্রেরিতে তুলনায় নিম্ন-স্তরের এবং ব্যবহারে কঠিন মনে হতে পারে।

যদিও সি স্ট্যান্ডার্ড লাইব্রেরির সময় ফাংশনগুলি ব্যাপকভাবে সমর্থিত এবং ব্যবহারে অপেক্ষাকৃত সরল, তবুও নতুন ভাষার লাইব্রেরিগুলি বা তৃতীয় পক্ষীয় সি লাইব্রেরি যেমন International Components for Unicode (ICU) এর মতো জটিল টাইমজোন ম্যানিপুলেশন এবং আন্তর্জাতিকীকরণের বৈশিষ্ট্য অভাব রয়েছে।

তবে, strftime ফাংশনের কাস্টমাইজেশন ক্ষমতা এবং বিস্তৃত প্ল্যাটফর্ম সমর্থন এটিকে সি-তে তারিখ স্ট্রিং কনভার্শনের জন্য একটি নির্ভরযোগ্য এবং দরকারি টুল করে তোলে। উচ্চ-স্তরের ডেটটাইম লাইব্রেরিগুলি থেকে আসা প্রোগ্রামারদের এর নিম্ন-স্তরের প্রকৃতিতে সমন্বয় করতে হতে পারে, তবে তারা এটিকে বিভিন্ন অ্যাপ্লিকেশনের জন্য তারিখ ও সময় ফর্ম্যাটিংয়ের জন্য অত্যন্ত শক্তিশালী এবং বহুমুখী হিসেবে খুঁজে পাবেন।