NSString 是为了人类阅读而存在的,必须进行编码,以使得bytes对人类有意义
String Objects
An NSString
object encodes a Unicode-compliant text string, represented as a sequence of UTF–16 code units. All lengths, character indexes, and ranges are expressed in terms of 16-bit platform-endian values, with index values starting at 0
.
An NSString
object can be initialized from or written to a C buffer, an NSData
object, or the contents of an NSURL
. It can also be encoded and decoded to and from ASCII, UTF–8, UTF–16, UTF–32, or any other string encoding represented by NSStringEncoding.
NSDate是byte数据的直接封装,或者说不关注编码格式;适用于和计算机直接沟通。
NSDate与bytes等价,与编码格式无关,只关注byte流。
NSData
and its mutable subclass NSMutableData provide data objects, object-oriented wrappers for byte buffers.