Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/118.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios Can';t将NSData头与Swift中的字符串进行比较_Ios_Swift_Byte_Ascii_Nsdata - Fatal编程技术网

Ios Can';t将NSData头与Swift中的字符串进行比较

Ios Can';t将NSData头与Swift中的字符串进行比较,ios,swift,byte,ascii,nsdata,Ios,Swift,Byte,Ascii,Nsdata,我试图将头(NSData的第一个字节)与字符串进行比较,我可以成功地打印字符串,但比较不起作用 这就是我尝试过的: var dataHeader:NSString = NSString(bytes: data.bytes, length: min(data.length, 8), encoding: NSASCIIStringEncoding)! println(dataHeader) result: PK “PK”的ASCII是0x50 0x4B 当我尝试以下操作时,什么都没有发生: if

我试图将头(NSData的第一个字节)与字符串进行比较,我可以成功地打印字符串,但比较不起作用

这就是我尝试过的:

var dataHeader:NSString = NSString(bytes: data.bytes, length: min(data.length, 8), encoding: NSASCIIStringEncoding)!

println(dataHeader)
result: PK
“PK”的ASCII是0x50 0x4B

当我尝试以下操作时,什么都没有发生:

if dataHeader == "PK" {

}
也许我是个傻瓜,但我已经没有任何想法了,那么有人知道如何解决这个问题吗? 我猜这与字符串编码有关,但在做了大量研究之后,我仍然无法理解


感谢您的帮助,谢谢

如果是二进制数据,“PK”之后是否可能有其他非打印字符?字符串的长度是多少

如果后面还有其他有趣的字符,可以截断字符串或使用NSString的
hasPrefix:
方法:

if dataHeader.hasPrefix("PK") {
  // do something
}

如果是二进制数据,“PK”之后是否可能有其他非打印字符?字符串的长度是多少

如果后面还有其他有趣的字符,可以截断字符串或使用NSString的
hasPrefix:
方法:

if dataHeader.hasPrefix("PK") {
  // do something
}

如果是二进制数据,“PK”之后是否可能有其他非打印字符?字符串的长度是多少

如果后面还有其他有趣的字符,可以截断字符串或使用NSString的
hasPrefix:
方法:

if dataHeader.hasPrefix("PK") {
  // do something
}

如果是二进制数据,“PK”之后是否可能有其他非打印字符?字符串的长度是多少

如果后面还有其他有趣的字符,可以截断字符串或使用NSString的
hasPrefix:
方法:

if dataHeader.hasPrefix("PK") {
  // do something
}

就是这样!我尝试过类似的方法,但我不知道.hasPrefix函数。谢谢就是这样!我尝试过类似的方法,但我不知道.hasPrefix函数。谢谢就是这样!我尝试过类似的方法,但我不知道.hasPrefix函数。谢谢就是这样!我尝试过类似的方法,但我不知道.hasPrefix函数。谢谢
println(数据)
要查看数据及其长度,请将其添加到问题中。
println(数据)
要查看数据及其长度,请将其添加到问题中。
println(数据)
要查看数据及其长度,请将其添加到问题中。
println(数据)
要查看数据及其长度,请将其添加到问题中。