آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
مشکل عدم دسترسی خریداران پیشین به برخی آموزش ها برطرف شد
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

تبدیل اعداد انگلیسی به فارسی و بالعکس برای نمایش اعداد فارسی فانکشنال در برنامه

alfredo  7 سال پیش  7 سال پیش
0 0

سلام به همه دوستان و اساتید.

برای انجام پروژه ای مجبور شدم از فونتی استفاده کنم که اعداد فارسیش مشکل داشت و توی برنامه اگر اعداد فارسی بود نمیشد روش عملیاتی انجام داد و با کرش مواجه می شدم.

بنابراین مجبور شدم دوتا متد بنویسم تا قبل از انجام عملیات روی اعداد. اونها رو به انگلیسی تبدیل کرده و سپس نتیجه رو به فارسی تبدیل کرده و بعد در لیبل مورد نظر قرار بدم.

متد هاش رو اینجا قرار میدم تا در وقت سایر دوستان صرفجویی بشه...

  internal func EnToFa (num: String) -> String {

var new = ""

var arr = num.characters.map { String($0)}

for i in 0...arr.count-1 {

switch arr[i] {

case "1" :

new.append("۱")

case "2" :

new.append("۲")

case "3" :

new.append("۳")

case "4" :

new.append("۴")

case "5" :

new.append("۵")

case "6" :

new.append("۶")

case "7" :

new.append("۷")

case "8" :

new.append("۸")

case "9" :

new.append("۹")

default:

new.append("۰")

}

}

return new

}



internal func FaToEn (num: String) -> String {

var new = ""

var arr = num.characters.map { String($0)}

for i in 0...arr.count-1 {

switch arr[i] {

case "۱" :

new.append("1")

case "۲" :

new.append("2")

case "۳" :

new.append("3")

case "۴" :

new.append("4")

case "۵" :

new.append("5")

case "۶" :

new.append("6")

case "۷" :

new.append("7")

case "۸" :

new.append("8")

case "۹" :

new.append("9")

default:

new.append("0")

}

}

return new

}

 
 
 
 
 
 
+1 0
سورستون رو مرتب کنید ، همچنین بهتر است به دنبال فونت استاندارد بگردید . (7 سال پیش)
0 0
با مک هرکاری کردم به ادیتور نمیتونست درست کدهارو نشون بده. مجبور شدم بیام با ویندوز ادیتش کنم. فکر کنم سایت با سافاری مشکل داره. (7 سال پیش)
 برای این سوال 1 پاسخ وجود دارد.
پاسخ به سوال 
alfredo  7 سال پیش
0 0

این هم یک روش دیگه.

درصورتی که فونت شما از مدلی بود که کلا اعداد انگلیسی نداشت‌، از این متد برای ورودی گرفتن یا انجام عملیات روی عددتون استفاده کنید.

درغیر اینصورت اگر کاربر با کیبورد فارسی اعداد را وارد کند. در قسمت محاسبات با کرش مواجه خواهد شد!

 

  

func convertToEnNumber(num: String)->String{

        let NumberStr: String = num

        let Formatter: NSNumberFormatter = NSNumberFormatter()

        Formatter.locale = NSLocale(localeIdentifier: "EN")

        let final = Formatter.numberFromString(NumberStr)

        return String(final!)

    }

 


پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .