草庐IT

ios - 如何在 Swift 中将十六进制字符串转换为 UInt8 字节数组?

我有以下代码:varencryptedByteArray:Array?do{letaes=tryAES(key:"passwordpassword",iv:"drowssapdrowssap")encryptedByteArray=tryaes.encrypt(Array("ThisIsAnExample".utf8))}catch{fatalError("Failedtoinitiateaes!")}print(encryptedByteArray!)//Prints[224,105,99,73,119,70,6,241,181,96,47,250,108,45,149,63]let

swift - 如何从 UInt16 转换为 NSNumber

我有一个UInt16变量,我想将其传递给需要NSNumber的遗留函数。如果我尝试:varcastAsNSNumber:NSNumber=myUInt16我收到一个编译器错误'UInt16'isnotconvertibleto'NSNumber'问题如何将其重铸为NSNumber? 最佳答案 varcastAsNSNumber=NSNumber(unsignedShort:myUInt16) 关于swift-如何从UInt16转换为NSNumber,我们在StackOverflow上找到

xcode - “CGFloat”无法转换为 ‘UInt8' 以及 Swift 和 Xcode 6 beta 4 的其他 CGFloat 问题

如果这说明了问题,这里是原始的Objective-C代码。intx=(arc4random()%(int)(self.gameView.bounds.size.width*5))-(int)self.gameView.bounds.size.width*2;inty=self.gameView.bounds.size.height;drop.center=CGPointMake(x,-y);我从这段代码开始。第2行和第3行很好,为了清楚起见,我将在稍后展示它们。letx=CGFloat(arc4random_uniform(UInt32(self.gameView.bounds.siz

swift - 如何 swift 将 Int16 转换为两个 UInt8 字节

我有一些二进制数据,将两个字节的值编码为有符号整数。bytes[1]=255//0xFFbytes[2]=251//0xF1解码这相当简单-我可以使用以下方法从这些字节中提取Int16值:Int16(bytes[1])编码这是我遇到问题的地方。我的大部分数据规范都要求使用UInt,这很简单,但我在提取构成Int16的两个字节时遇到了问题letnv:Int16=-15UInt8(nv>>8)//failUInt8(nv)//fail问题我如何提取构成Int16值的两个字节 最佳答案 你应该使用无符号整数:letbytes:[UInt8

arrays - 在 Swift 中将 bytes/UInt8 数组转换为 Int

如何将一个4字节数组转换成对应的Int?letarray:[UInt8]==>letvalue:Int例子:输入:\0\0\0\x0e输出:14我在互联网上找到的一些不起作用的代码:letdata=NSData(bytes:array,length:4)data.getBytes(&size,length:4)//theoutputtosizeis184549376 最佳答案 有两个问题:Int是64位平台上的64位整数,你的输入数据只有32位。Int在所有当前的Swift平台上使用小端表示,您的输入是大端。话虽这么说,但以下内容可

Swift:如何将字符串转换为 UInt8 数组?

如何将字符串转换为UInt8数组?varstr="test"varar:[UInt8]ar=str 最佳答案 有很多不同的方法,具体取决于您希望如何处理非ASCII字符。但最简单的代码是使用utf8View:letstring="hello"letarray:[UInt8]=Array(string.utf8)注意,这将导致多字节字符被表示为数组中的多个条目,即:letstring="é"print(Array(string.utf8))打印出[195,169]还有.nulTerminatedUTF8,它做同样的事情,但是如果您计划

integer - 快速将 UInt 转换为 Int

我有这个返回UInt32的表达式:letrandomLetterNumber=arc4random()%26我希望能够在此if语句中使用数字:ifletters.count>randomLetterNumber{varrandomLetter=letters[randomLetterNumber]}这个问题是控制台给我这个Playgroundexecutionfailed:error::11:18:error:couldnotfindanoverloadfor'>'thatacceptsthesuppliedargumentsifletters.count>randomLetterNu

swift - 在 Swift 中将 Int 转换为 UInt32

我正在制作一个Tcp客户端,因此使用CFStreamCreatePairWithSocketToHost,它期望第二个参数为UInt32。这是我正在尝试做的示例:funcinitNetwork(IP:String,Port:Int){//relevantstuff//ConvertPort:InttoUInt32tomakethisshitwork!CFStreamCreatePairWithSocketToHost(kCFAllocatorDefault,IPasNSString,Port,&readStream,&writeStream)//Irelevantstuff}一段时间以

swift - Swift 中的 NSData 到 [Uint8]

我无法在Swift中找到这个问题的解决方案(它们都是Objective-C,并且它们处理我认为在Swift中不存在的相同形式的指针)。有什么方法可以将NSData对象转换为Swift中[Uint8]形式的字节数组吗? 最佳答案 如果您以稍微复杂的方式遍历指针,或者通过Swift3中引入的新Array构造函数,则可以避免首先将数组初始化为占位符值:swift3letdata="foo".data(using:.utf8)!//newconstructor:letarray=[UInt8](data)//…oroldstylethrou

c# - 使用 uint 而不是 int 作为数据模型类中的主键是个好主意吗?

我们知道主键通常是正整数。在数据模型类中使用uint而不是int作为主键是个好主意吗?示例:publicclassCustomer{publicuintCustomerId{get;set;}//othersareomittedforthesakeofsimplicity.} 最佳答案 相应的SQL数据类型是有符号数,所以我坚持使用int以避免任何意外。 关于c#-使用uint而不是int作为数据模型类中的主键是个好主意吗?,我们在StackOverflow上找到一个类似的问题: