gpt4 book ai didi

ios - "Could not cast value of type ' __NSCFString ' (0x103c93c50) to ' NSNumber ' (0x103535b88)"错误

转载 作者:搜寻专家 更新时间:2023-11-01 05:39:20 24 4
gpt4 key购买 nike

我创建了一个 SQLite 表,其中包含一行 id integer PRIMARY KEY。我用了this tutorialSQLite 与我的应用程序集成。我正在尝试将其添加到 Intsarray 中。这是我的代码:

let all = "select id from \(self.tableName)"
let fullArray = self.dbManager.loadDataFromDB(all)

for currentObject in fullArray {
println(currentObject[0])
println(_stdlib_getDemangledTypeName(currentObject[0]))
self.tableViewData.append(currentObject[0] as! Int) //tableViewData is an array of Ints
}

println 语句的结果:

2
Swift.ImplicitlyUnwrappedOptional

当我运行该应用程序时,在代码的最后一行出现以下错误。

Could not cast value of type '__NSCFString' (0x103c93c50) to 'NSNumber' (0x103535b88).

我做错了什么,我该如何解决?

最佳答案

请注意教程代码中的以下几行:

// Convert the column data to text (characters).
char *dbDataAsChars = (char *)sqlite3_column_text(compiledStatement, i);

所有结果都被转换为字符串,这意味着数据库类型 integer 不会保留在结果中,您必须使用类似的东西:

for currentObject in fullArray as! [String] {  
// Int(currentObject[0])! in Swift 2
self.tableViewData.append(currentObject[0].toInt())
}

关于ios - "Could not cast value of type ' __NSCFString ' (0x103c93c50) to ' NSNumber ' (0x103535b88)"错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32601514/

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