用于在 Swift 3 中将英语数字转换为波斯语或阿拉伯语数字的 NSFormatter

Sae*_*ahi 5 nsformatter number-formatting ios swift3

我在这里阅读了类似的问题并在我的应用程序中编写了此方法

        let formatter = NumberFormatter()

    func convertEngNumToPersianNum(num: String)->String{
        let number = NSNumber(value: Int(num)!)
        let format = NumberFormatter()
        format.locale = Locale(identifier: "fa_IR")
        let faNumber = format.string(from: number)

        return faNumber!


    }
Run Code Online (Sandbox Code Playgroud)

我没有得到错误但我也没有得到结果!

我的号码代码是这样的:

let checkNumber = Home2ViewController().customtitle.count
    personalCustom.text = ("\(checkNumber)")
Run Code Online (Sandbox Code Playgroud)

我在另一个有效的视图控制器中使用了另一个数字但我想以波斯语或阿拉伯数字格式而不是英语格式显示此数字

KKR*_*cks 7

尝试这个 :

func convertEngNumToPersianNum(num: String)->String{
        //let number = NSNumber(value: Int(num)!)
        let format = NumberFormatter()
        format.locale = Locale(identifier: "fa_IR") 
        let number =   format.number(from: num)
        let faNumber = format.string(from: number!)
        return faNumber!

    }
Run Code Online (Sandbox Code Playgroud)

或用您的生产线替换

        let number =   format.number(from: num)
    let faNumber = format.string(from: number!)
Run Code Online (Sandbox Code Playgroud)