如何在Swift中以二进制形式打开文件

时间:2015-01-04 23:45:19

标签: swift

我是Swift的新手,我不确定如何获取文件并将其存储在二进制数组中。

我知道如何获取文件,但我不知道如何将其存储在二进制数组中,以后会对其进行修改。

假设变量" selectedFile"是我拿起的文件(在NSData类型中) 变量" bArray" ([int8] array)是用于存储文件的二进制表示的数组。

var bArray: [Int8] = [Int8]()
var chosenFile: NSData! = NSData(contentsOfURL: "xxxxxxxx")

任何帮助?

1 个答案:

答案 0 :(得分:0)

如果您创建NSMutableData的实例,则可以使用mutableBytes property获取对基础数据的引用。在C中,这将是void *;在Swift中,它是UnsafeMutablePointer<Void>

然后,您可以直接使用此数据(不需要另一个字节数组)。只要您保持在length的{​​{1}}范围内,您就可以,例如replace individual bits of data, or indeed the entirety of the data

或者,您可以使用NSMutableData有选择地修改部分数据,而不是直接处理原语。这也在the documentation中解释。