macOS/iOS API解説

iOS , Mac アプリケーション開発のために使われる主要フレームワークの日本語情報です。2010年代に書かれた内容です。今後更新はありません。

目次

getBytes:length:

INDEX>AppKit>NSData

レシーバに入っているデータのうち先頭からlengthバイト分をaBufferにコピーします

Objective-C

-(void)getBytes:(void *)buffer
         length:(NSUInteger)length

Swift

func getBytes(_ buffer: UnsafeMutablePointer<Void>,
       length length: Int)

解説

レシーバに入っているデータのうち先頭からlengthバイト分をaBufferにコピーします。
バッファへのレシーバーのスタートからの長さバイトまでのコピー。

返り値

なし

引数

Objective-C

( void * )buffer

Swift

_ buffer: UnsafeMutablePointer<Void>

バッファ

Objective-C

( NSUInteger )length

Swift

length length: Int

長さ

クラス

NSData

使用可能

10.0

参照

- bytes
- description
- getBytes:
- getBytes:range:

参考記事(外部サイト)

ios - NSData from Byte array in Swift - Stack Overflow

例文

Objective-C

#import "SetImage.h"

@implementation SetImage

- (IBAction)set:(id)sender
{
unsigned char aBuffer[100];
NSString *str = @"This is a pen.";
NSData *dat1 = [NSData dataWithBytes:[str cString]
        length:[str cStringLength]];
NSData *dat2 = [NSData alloc];
[dat1 getBytes:aBuffer length:3];
[dat2 initWithBytes:aBuffer length:100];
NSLog([NSString stringWithCString:aBuffer]);
}

@end

Swift

    //NSData getBytes:length:
    //NSData dataWithBytes:length:
    //Swift2.0
    @IBAction func function001(sender: AnyObject) {
        var char : [UInt8]
        char = [0x10 , 0x1A, 0xBF , 0x00 , 0xAA , 0xFF]
        let dat1 = NSData(bytes: char, length: 6)
        print("\(dat1)")
        //-><101abf00 aaff>
    }