gpt4 book ai didi

ios - "Index out of range error"尝试读取文本文件时

转载 作者:行者123 更新时间:2023-11-30 12:07:05 28 4
gpt4 key购买 nike

我在使用这段代码时遇到了一些问题。我正在尝试从名为“level1”的文本文件中读取内容,并逐行读取,并使用 .enumerated() 函数将每一行添加到数组中。但是当我尝试使用索引来填充数组时,当我打印它时,它从 0 开始,它崩溃并给我一个错误,它正在访问超出范围的内容?任何帮助将不胜感激,谢谢。

var clueString = ""
var solutionString = ""
var letterBits = [String]()
var solutions = [String]()

var gameData: [String] = [String]()

func loadLevel() -> [String] {
if let levelFilePath = Bundle.main.path(forResource: "level\(1)", ofType: "txt"){
if let levelContents = try? String(contentsOfFile: levelFilePath) {
var lines = levelContents.components(separatedBy: "\n")
lines = GKRandomSource.sharedRandom().arrayByShufflingObjects(in: lines) as! [String]

for (index, line) in lines.enumerated() {
let parts = line.components(separatedBy: ": ")
let answer = parts[0]
let clue = parts[1]

gameData[index].append(answer)
}
}
}
return gameData
}

最佳答案

为了将单个元素添加到 Array 的末尾,您需要调用append(_:)Array 本身上,而不是在它应该进入的元素上。

因此,您的代码中 gameData[index].append(answer) 需要更改为 gameData.append(answer)

关于ios - "Index out of range error"尝试读取文本文件时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46554280/

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