繁体   English   中英

有字符串Url,但URL有“ \\ /”。如何获取字符串中每个正确的值,如数组类型swift3

[英]Got string Url but the url have “\/”.How to get each correct value in string like array type swift3

我从服务器获得了一个字符串,但是url字符串看起来很奇怪,它也很像数组类型。 我不知道如何获得每个价值。 对不起,我是初学者。谢谢。

let string:String = "[\"http:\/\/aaa.com\/user\/head\/111.jpg?1495612713419\",\"http:\/\/aaa.com\/user\/head\/222.jpg?1496215823622\",\"http:\/\/aaa.com\/user\/head\/333.jpg?1495251220764\",\"http:\/\/aaa.com\/user\/head\/444.jpg?1495773694237\",\"http:\/\/aaa.com\/user\/head\/555.jpg?1495597839001\"]"

let tempArr = string.components(separatedBy: ",")
var stringArr = Array<String>()

for a in tempArr {
    var b = a.replacingOccurrences(of: "\"", with: "")
    b = b.replacingOccurrences(of: "[", with: "")
    b = b.replacingOccurrences(of: "]", with: "")
    stringArr.append(b)
}
print(stringArr)

打印日志

["http:\\/\\/aaa.com\\/user\\/head\\/111.jpg?1495612713419", "http:\\/\\/aaa.com\\/user\\/head\\/222.jpg?1496215823622", "http:\\/\\/aaa.com\\/user\\/head\\/333.jpg?1495251220764", "http:\\/\\/aaa.com\\/user\\/head\\/444.jpg?1495773694237", "http:\\/\\/aaa.com\\/user\\/head\\/555.jpg?1495597839001"]

服务器正在发送已转换为字符串的图像的url,并且在默认情况下,字符串具有在Json中添加\\的属性,因此只需将字符串转换为url,该\\就会自动删除。 例如。 让url = NSURL(string:urlstring)print(“ url =(url)”)

谢谢

字符串编码为JSON时,将\\作为转义字符添加,看来您是直接使用JSON字符串而不先对其进行解码。 您如何得到这个结果? 您在使用Alamofire吗? 请让我知道进一步帮助您。

 func fetchMyImages() {
    let url = "some url to call the image api"
    let request = Alamofire.request(url)
    request.validate().responseJSON { [unowned self] (response) in
        switch response.result {
        case .success(let result):
            self.doSomething(with: result) //the result is Any object
        case .failure(let error):
            print("Oh my Error: \(error)")
        }
    }
}

这将为您提供JSON解码的对象,然后可以将其适当地转换为Dictionary(如果是Dictionary)或Array(如果是Array)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM