次の方法の使用と混同していますNSString
initWithData:encoding:
指定されたエンコーディングを使用して指定されたデータを Unicode 文字に変換することによって初期化された NSString オブジェクトを返します。
initWithBytes:length:encoding:
指定されたエンコーディングで解釈されたバイトの指定されたバッファから、指定されたバイト数を含む初期化された NSString オブジェクトを返します。
そして、それらの使用法は次のようなものです:
NSMutableData *someData = //some data;
NSString *someString = nil;
someString= [[NSString alloc] initWithData:someData encoding:NSUTF8StringEncoding];
someString=[[NSString alloc] initWithBytes:[someData mutableBytes] length:[someData length] encoding:NSUTF8StringEncoding];
NSData
class はbyte buffersのラッパーです。これらの同様のメソッドの違いは何ですか。違いを理解するのを手伝ってください。