سوال

فارسی کردن اعداد در ویژوال سی

بازدید120پست ها2آخرین فعالیت11 ماه پیش
0
2

با سلام
در برنامه ای در VC++.NET که نام کاربر (یک رشته) و سن او (یک عدد) را می گیرد و نمایش می دهد، با استفاده از یونیکد و انتخاب زبان Persian براحتی می توان از فونت فارسی استفاده کرد و نام شخص را نمایش داد، ولی سن او (اعداد) همواره به انگلیسی نمایش داده شده و فارسی نمی شوند. کسی می تونه در این مورد به من کمک کنه لطفاً که چگونه اعداد را هم بتوانم فارسی نمایش دهم؟

2 پاسخ

0

سلام
میتونید یه تابع برای تبدیل اعداد از انگلیسی به فارسی بنویسید و موقع نمایش ازش استفاده کنید.
مثلا تبدیل 1234 به ۱۲۳۴ ...

0

کد مثال:

#include <iostream>
#include <string>

std::string ConvertEnglishToPersian(const std::string& input)
{
    // Define a mapping of English digits to Persian digits
    std::string englishDigits = "0123456789";
    std::string persianDigits = "۰۱۲۳۴۵۶۷۸۹";

    std::string output = input;

    // Replace each English digit with its Persian counterpart
    for (size_t i = 0; i < englishDigits.length(); ++i)
    {
        size_t found = output.find(englishDigits[i]);
        while (found != std::string::npos)
        {
            output.replace(found, 1, 1, persianDigits[i]);
            found = output.find(englishDigits[i], found + 1);
        }
    }

    return output;
}

سوال برنامه نویسی دارید؟

ندونستن عیب نیست، نپرسیدن چرا!

این سوال حل نشده است!

این سوال هنوز حل نشده یا به پاسخ بهتری نیاز دارد. برای پاسخ به این سوال کافیست وارد حساب کاربری خود شوید.