29,027
社区成员
发帖
与我相关
我的任务
分享
let str:String = "123\u{7b2c}\u{4e00}\u{4e2a}"
let enc = CFStringConvertEncodingToNSStringEncoding(UInt32(CFStringEncodings.GB_18030_2000.rawValue))
let data = str.data(using: String.Encoding(rawValue: enc), allowLossyConversion: false)
let result:NSString = NSString(data: data!, encoding: enc)!
print("\(result)")
func insert(results: [[String: Any]])
{
let data = NSKeyedArchiver.archivedData(withRootObject: results)
let array = data.withUnsafeBytes {
[UInt8](UnsafeBufferPointer(start: $0, count: data.count))
}
let insertSQL = "INSERT INTO t_models (results) VALUES (?);"
var statement: OpaquePointer?
if sqlite3_prepare_v2(db, insertSQL, -1, &statement, nil) == SQLITE_OK
{
sqlite3_bind_blob(statement, 1, array, Int32(data.count), nil)
sqlite3_step(statement)
sqlite3_finalize(statement)
}
else
{
print( "Failed from sqlite3_prepare_v2. Error is: %s", sqlite3_errmsg(db) )
}
}
func insert(results: [[String: Any]])
{
let data = NSKeyedArchiver.archivedData(withRootObject: results)
let array = data.withUnsafeBytes {
[UInt8](UnsafeBufferPointer(start: $0, count: data.count))
}
let insertSQL = "INSERT INTO t_models (results) VALUES (?);"
var statement: OpaquePointer?
if sqlite3_prepare_v2(db, insertSQL, -1, &statement, nil) == SQLITE_OK
{
sqlite3_bind_blob(statement, 1, array, Int32(data.count), nil)
sqlite3_step(statement)
sqlite3_finalize(statement);
}
else
{
print( "Failed from sqlite3_prepare_v2. Error is: %s", sqlite3_errmsg(db) )
}
}