gpt4 book ai didi

ios - 线程 3 : Fatal error: Index out of range

转载 作者:行者123 更新时间:2023-11-30 12:00:54 35 4
gpt4 key购买 nike

我正在尝试提取天气数据,但出现超出范围的错误。有人可以帮忙吗?我的 friend 告诉我这是我的数组的问题,但我确信使用了字符串分隔符。

我的主要目标是从网站检索天气数据,然后将其添加到名为 message 的变量中

override func viewDidLoad() {
super.viewDidLoad()
let url = URL(string: "https://weather.weatherbug.com/weather-forecast/now/salt-lake-city")!
let request = NSMutableURLRequest(url: url)

let task = URLSession.shared.dataTask(with: request as URLRequest){
data, response, error in

var message = ""
if error != nil{
print(error.debugDescription)
}else{
if let unwrappedData = data {
let dataString = NSString(data: unwrappedData, encoding: String.Encoding.utf8.rawValue)

var stringSeperator = "<span class=\"value ng-binding ng-scope\" ng-if=\"widget.ObservationAggregate.Observation.FeelsLike\" ng-bind=\"UnitUtility.convertTemp(widget.ObservationAggregate.Observation.FeelsLike)\">"

if let contentArray = dataString?.components(separatedBy: stringSeperator){
if contentArray.count > 0 {
stringSeperator = "</span>"

let newContentArray = contentArray[1].components(separatedBy: stringSeperator)

if newContentArray.count > 0 {
message = newContentArray[0]
print(newContentArray[0])
}
}
}
}
}
}

task.resume()
}

最佳答案

我假设您在以下行中收到此错误。

let newContentArray = contentArray[1].components(separatedBy: stringSeperator)

问题似乎是您正在检查 contentArray 的计数是否大于 0,但访问索引 1。请注意,数组的计数不为 0 并不一定意味着它具有索引 1 处的值。由于数组的索引从 0 开始,索引 1 实际上要求数组的计数至少为 2。

关于ios - 线程 3 : Fatal error: Index out of range,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47255742/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com