首页 > 代码库 > iOS 基础类解析 - NSData
iOS 基础类解析 - NSData
NSData Class Reference
Inherits from | NSObject |
Conforms to | NSCopying NSMutableCopying NSSecureCoding NSObject (NSObject) |
Framework | /System/Library/Frameworks/Foundation.framework |
Availability | Available in iOS 2.0 and later. |
Declared in | NSData.h |
Companion guides | Binary Data Programming Guide Property List Programming Guide |
AdvancedURLConnections CryptoExercise EADemo MVCNetworking SimpleURLConnections |
Overview
NSData
and its mutable subclass NSMutableData
provide data objects, object-oriented wrappers for byte buffers. Data objects let simple allocated buffers (that is, data with no embedded pointers) take on the behavior of Foundation objects.
NSData
creates static data objects, and NSMutableData
creates dynamic data objects. NSData
and NSMutableData
are typically used for data storage and are also useful in Distributed Objects applications, where data contained in data objects can be copied or moved between applications.
The size of the data is subject to a theoretical limit of about 8 ExaBytes (in practice, the limit should not be a factor).
NSData
is “toll-free bridged” with its Core Foundation counterpart, CFDataRef
. See “Toll-Free Bridging” for more information on toll-free bridging.
Tasks
Creating Data Objects
+ data
+ dataWithBytes:length:
+ dataWithBytesNoCopy:length:
+ dataWithBytesNoCopy:length:freeWhenDone:
+ dataWithContentsOfFile:
+ dataWithContentsOfFile:options:error:
+ dataWithContentsOfURL:
+ dataWithContentsOfURL:options:error:
+ dataWithData:
– initWithBase64EncodedData:options:
– initWithBase64EncodedString:options:
– initWithBytes:length:
– initWithBytesNoCopy:length:
– initWithBytesNoCopy:length:deallocator:
– initWithBytesNoCopy:length:freeWhenDone:
– initWithContentsOfFile:
– initWithContentsOfFile:options:error:
– initWithContentsOfURL:
– initWithContentsOfURL:options:error:
– initWithData:
– initWithBase64Encoding:
Deprecated in iOS 7.0+ dataWithContentsOfMappedFile:
Deprecated in iOS 5.0– initWithContentsOfMappedFile:
Deprecated in iOS 5.0
Accessing Data
– bytes
– description
– enumerateByteRangesUsingBlock:
– getBytes:length:
– getBytes:range:
– subdataWithRange:
– rangeOfData:options:range:
– getBytes:
Deprecated in iOS 4.0
Base-64 Encoding
– base64EncodedDataWithOptions:
– base64EncodedStringWithOptions:
– base64Encoding
Deprecated in iOS 7.0
Testing Data
– isEqualToData:
– length
Storing Data
– writeToFile:atomically:
– writeToFile:options:error:
– writeToURL:atomically:
– writeToURL:options:error:
Copyright ? 2014 Apple Inc. All Rights Reserved. Terms of Use | Privacy Policy | Updated: 2014-02-11