首页 > 解决方案 > swift api json数值单位逗号控制

问题描述

func getKoreacountryChart() {
    AF.request("https://api.corona-19.kr/korea/country/new/?", headers: headers).responseJSON { response in
                
                let result = response.data
                
                if result != nil {
                    let json = JSON(result!)
                    
                    let seoul = json["seoul"]["totalCase"].intValue
                    let busan = json["busan"]["totalCase"].intValue
                    let daegu = json["daegu"]["totalCase"].intValue
                    let incheon = json["incheon"]["totalCase"].intValue
                    let gwangju = json["gwangju"]["totalCase"].intValue
                    let daejeon = json["daejeon"]["totalCase"].intValue
                    let ulsan = json["ulsan"]["totalCase"].intValue
                    let sejong = json["sejong"]["totalCase"].intValue
                    let gyeonggi = json["gyeonggi"]["totalCase"].intValue
                    let gangwon = json["gangwon"]["totalCase"].intValue
                    let chungbuk = json["chungbuk"]["totalCase"].intValue
                    let chungnam = json["chungnam"]["totalCase"].intValue
                    let jeonbuk = json["jeonbuk"]["totalCase"].intValue
                    let jeonnam = json["jeonnam"]["totalCase"].intValue
                    let gyeongbuk = json["gyeongbuk"]["totalCase"].intValue
                    let gyeongnam = json["gyeongnam"]["totalCase"].intValue
                    let jeju = json["jeju"]["totalCase"].intValue
                    let quarantine = json["quarantine"]["totalCase"].intValue


                    
                    self.KoreaCountryData = KCountryData(seoul: seoul, busan: busan, daegu: daegu, incheon: incheon, gwangju: gwangju, daejeon: daejeon, ulsan: ulsan, sejong: sejong, gyeonggi: gyeonggi, gangwon: gangwon, chungbuk: chungbuk, chungnam: chungnam, jeonbuk: jeonbuk, jeonnam: jeonnam, gyeongbuk: gyeongbuk, gyeongnam: gyeongnam, jeju: jeju, quarantine: quarantine)
                } else {
                    self.KoreaCountryData = KcountrytestDate
                }
            }

struct KCountryData {

let seoul: Int
let busan: Int
let daegu: Int
let incheon: Int
let gwangju: Int
let daejeon: Int
let ulsan: Int
let sejong: Int
let gyeonggi: Int
let gangwon: Int
let chungbuk: Int
let chungnam: Int
let jeonbuk: Int
let jeonnam: Int
let gyeongbuk: Int
let gyeongnam: Int
let jeju: Int
let quarantine: Int
}

我正在使用 Swiftui 创建一个 covid 应用程序。


我从 api 得到了一个 json 表单,我正在粘贴


"totalCase": "26,732", "recovered": "24,395",json格式包含逗号,所以输出不准确。


ex)totalCase:26,recovered:24 我想删除逗号并表达所有数字。


{ “resultCode”:“0”,“resultMessage”:“정상 처리되었습니다。”,“korea”:{ “countryName”:“합계”,“newCase”:“97”,“totalCase”:“26,732”,“恢复”:“24,395”,“死亡”:“468”,“百分比”:“51.56”,“newCcase”:“79”,“newFcase”:“18”},“seoul”:{“countryName”:“ 서울”、“newCase”:“25”、“totalCase”:“6,081”、“recovered”:“5,500”、“death”:“78”、“percentage”:“62.47”、“newCcase”:“20” , "newFcase": "5" }

标签: jsonswift

解决方案


您可以使用数字格式化程序将此格式转换为 int

let numberFormatter = NumberFormatter()
numberFormatter.locale = Locale(identifier: "en_US")
numberFormatter.numberStyle = .decimal

例子

let string = "6,081"
if let value = numberFormatter.number(from: string)?.intValue {
    print(value)
}

推荐阅读