কম্পিউটার টিউটোরিয়াল

C#-এ Char.ToString() মেথড: ক্যারেক্টারকে স্ট্রিং-এ রূপান্তর


C#-এ Char.ToString() মেথডটি বর্তমান char ইনস্ট্যান্সের সমতুল্য স্ট্রিং রিপ্রেজেন্টেশন ফেরত দেয়। এটি একটি ক্যারেক্টারকে দৈর্ঘ্য ১-এর স্ট্রিং-এ রূপান্তর করে।

সিনট্যাক্স (Syntax)

public override string ToString();

উদাহরণ ১: ছোট হাতের অক্ষর

using System;

public class Demo
{
    public static void Main()
    {
        char ch = 'p';
        Console.WriteLine("Value = " + ch);
        
        char lower = Char.ToLowerInvariant(ch);
        Console.WriteLine("Lowercase Equivalent = " + lower);
        
        string str = ch.ToString();
        Console.WriteLine("String Equivalent = " + str);
    }
}

আউটপুট

Value = p
Lowercase Equivalent = p
String Equivalent = p

উদাহরণ ২: বড় হাতের অক্ষর (লোয়ারকেস কনভার্সন সহ)

using System;

public class Demo
{
    public static void Main()
    {
        char ch = 'D';
        Console.WriteLine("Value = " + ch);
        
        char lower = Char.ToLowerInvariant(ch);
        Console.WriteLine("Lowercase Equivalent = " + lower);
        
        string str = ch.ToString();
        Console.WriteLine("String Equivalent = " + str);
    }
}

আউটপুট

Value = D
Lowercase Equivalent = d
String Equivalent = D

Char.ToString() এর বিকল্প পদ্ধতিগুলো

পদ্ধতিউদাহরণবর্ণনা
ch.ToString()'a'.ToString()ইনস্ট্যান্স মেথড (সুপারিশকৃত)
char.ToString(ch)char.ToString('a')স্ট্যাটিক মেথড
new string(ch, 1)new string('a', 1)কনস্ট্রাক্টর (রিপিট করার জন্যও কাজ করে)
"" + ch"" + 'a'স্ট্রিং কনক্যাটেনেশন (অপ্টিমাইজড)
$"{ch}"$"{ch}"ইন্টারপোলেশন (আধুনিক)

পারফরম্যান্স তুলনা

using System;
using System.Diagnostics;

public class PerfTest
{
    public static void Main()
    {
        char ch = 'X';
        int iterations = 10_000_000;
        
        var sw = Stopwatch.StartNew();
        for (int i = 0; i < iterations; i++) ch.ToString();
        sw.Stop();
        Console.WriteLine($"ch.ToString(): {sw.ElapsedMilliseconds} ms");
        
        sw.Restart();
        for (int i = 0; i < iterations; i++) char.ToString(ch);
        sw.Stop();
        Console.WriteLine($"char.ToString(ch): {sw.ElapsedMilliseconds} ms");
        
        sw.Restart();
        for (int i = 0; i < iterations; i++) new string(ch, 1);
        sw.Stop();
        Console.WriteLine($"new string(ch,1): {sw.ElapsedMilliseconds} ms");
        
        sw.Restart();
        for (int i = 0; i < iterations; i++) "" + ch;
        sw.Stop();
        Console.WriteLine($"\"\" + ch: {sw.ElapsedMilliseconds} ms");
    }
}

Char.ToLowerInvariant() সম্পর্কে সংক্ষিপ্ত

উদাহরণে ব্যবহৃত Char.ToLowerInvariant(ch) ইনভারিয়ান্ট কালচার (Invariant Culture) অনুযায়ী ক্যারেক্টারকে লোয়ারকেসে রূপান্তর করে। এটি التركية (Turkish) 'I' ↔ 'ı' সমস্যা এড়াতে সাহায্য করে।

টর্কিশ 'I' সমস্যা উদাহরণ

using System;
using System.Globalization;

public class TurkishDemo
{
    public static void Main()
    {
        char turkishI = 'I'; // U+0049
        
        // ডিফল্ট (CurrentCulture - Turkish এसे)
        CultureInfo.CurrentCulture = new CultureInfo("tr-TR");
        Console.WriteLine($"ToLower (tr-TR): '{char.ToLower(turkishI)}'"); // ı (U+0131)
        
        // Invariant Culture
        Console.WriteLine($"ToLowerInvariant: '{char.ToLowerInvariant(turkishI)}'"); // i (U+0069)
    }
}

সারসংক্ষেপ: char.ToString() একটি ক্যারেক্টারকে স্ট্রিং-এ রূপান্তর করার সবচেয়ে সরল এবং পঠনীয় পদ্ধতি।

  1. C#-এ Char.ToLowerInvariant() মেথড: ইনভারিয়ান্ট কালচারে লোয়ারকেস কনভার্সন

  2. C#-এ CharEnumerator.ToString() মেথড

  3. C#-এ Char.ToUpperInvariant(Char) মেথড

  4. C# Convert.ToString পদ্ধতি