• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

ios - 将任何语言的数字转换为特定语言

[复制链接]
菜鸟教程小白 发表于 2022-12-12 22:18:54 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我想在离线模式下将任何语言的数字转换为英文格式 这意味着如果我在阿拉伯语中得到 10.00 为 "١٠.٠٠"。我想将其转换回 10.00。

我找到了一些链接,但我认为在这种情况下这样做不是一个好主意。因为为此我必须为所有语言写作。 convert kABPersonPhoneProperty to arabic numbers

谁能帮我解决这个问题



Best Answer-推荐答案


我是这样解决的

BOOL isCommaUsingCountry = [self ifCountryCodePresentIntheList];

NSString *strAfterReplacing = @"";
if (isCommaUsingCountry)
{
    //If some numbers come like “10.000,00”
    NSString *strAfterReplacingDot = [str stringByReplacingOccurrencesOfString"." withString""];
    strAfterReplacing = [strAfterReplacingDot  stringByReplacingOccurrencesOfString"," withString"."];

    //For removing Arabic comma
    strAfterReplacing = [strAfterReplacing  stringByReplacingOccurrencesOfString"٫" withString"."];

}
else
{
    strAfterReplacing = [str stringByReplacingOccurrencesOfString"," withString""];
}

NSArray *separray = [strAfterReplacing componentsSeparatedByString"."];
NSString *numbersBeforeDecimal = @"";
NSString *numbersAfterDecimal = @"";
if([separray count] == 2)
{
    numbersBeforeDecimal = [separray objectAtIndex:0];
    numbersAfterDecimal = [separray objectAtIndex:1];
}

//Converting back to US format
if([strAfterReplacing length] > 0)
{
    NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init];
    NSLocale *usLocale = [[[NSLocale alloc] initWithLocaleIdentifier"en_US"] autorelease];
    [formatter setLocale:usLocale];
    NSNumber *newNum1  = [formatter numberFromString:numbersBeforeDecimal];
    NSNumber *newNum2  = [formatter numberFromString:numbersAfterDecimal];
    numbersBeforeDecimal = [NSString stringWithFormat:@"%@", newNum1];
    numbersAfterDecimal = [NSString stringWithFormat:@"%@", newNum2];
}
NSString *combinedStr = [NSString stringWithFormat:@"%@.%@", numbersBeforeDecimal, numbersAfterDecimal];

关于ios - 将任何语言的数字转换为特定语言,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23808228/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap