[英]How can I access many Cocoa controls without the same number of properties or outlets?
[英]How can I access binary file data without loading it entirely in Cocoa?
我在可可中編寫了一個小工具來計算文件的MD5,SHA-1和其他哈希函數。 如果正確理解,至少可以通過以下方式實現MD5算法:我只需要同時加載文件的一小部分-這似乎是個好主意,因為我不想占用全部用戶的RAM,然后再使用一些RAM僅用於計算10 Gb存檔的哈希值。
如何使用可可粉實現此目的?
NSData
可以對文件進行內存映射,以便基礎OS(Mac OS或iOS)虛擬內存系統根據需要自動在文件的各個部分中分頁。 將NSData
構造函數之一與以下options:
一起使用options:
參數和NSDataReadingMappedIfSafe
或NSDataReadingMappedAlways
選項。
要做到這一點而又不對文件進行內存映射(這可能很麻煩),您可以使用NSFileHandle
並使用-readDataOfLength:
讀取任意大小的數據塊。
您在可可中有三種選擇:
我有開放源代碼顯示可以在此處使用流的代碼: https : //github.com/karelia/KSCrypto/blob/master/KSSHA1Stream.h
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.