Develop
2013.04.23 18:07
[ios] NSData 클래스에 대해 (NSData <-> char*)
조회 수 26590 댓글 0
# NSData 클래스
파일처리 등에 이용하는 바이트 배열 클래스 (1byte 기준)
메서드
-(id)dataWithBytes : (const void *)bytes length:(NSVinteger)length
생성자 배열 주소 개수
-(id)initWithBytes : (const void *)bytes length:(NSUinteger)length
초기화 어떤 타입의 포인터도 상관없음, integer를 넣으면 깨질 수 있음.
-(id)dataWithData:(NSData*)aData
생성자
-(id)initWithData:(NSData*)aData
-(NSUinteger)length //
-(void)getBytes:(const void*)bytes
bytes에게 주소를 리턴
-(NSString *)description
ex) NSString 과 NSData 와 char * 사이의 변환
#import <foundation/foundation.h> /* 안써도 됨 #import <foundation/NSString.h> #import <foundation/NSData.h> */ int main(int argc, char * argv[]) { unsigned char buf[20]; // 저장하기 위해 생성 NSString * message = @"Test Conversion"; const char * str = [message UTF8String]; // 일반 char type 으로 변환 // 생성자이므로 메모리할당이 필요없음 NSData * myData = [NSData dataWithBytes:str length:strlen(str)]; // NSString => NSData // 문자의 개수 리턴 [myData getBytes:buf]; // char 배열로 변경 int i; for (i=0; i<[myData length];i++) { NSLog(@"%c",buf[i]); } system("pause"); return 0; }
# NSMutableData 클래스
변경가능한 Data 클래스
삽입, 삭제(remove로 시작), 갱신에 관련된 메서드가 존재
인덱스 위치에 있는 인스턴스를 삭제하고 새로운 인스턴스를 삽입
NSData 로부터 상속됨
add : 뒤에 삽입
insert : 위치에 삽입
번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|---|
841 | Develop | '2014 모바일 개발 트렌드' 발표자료입니다. | hooni | 2014.10.02 | 1125 |
840 | Develop | Aspect Oriented Programming in Objective-C | hooni | 2015.05.18 | 936 |
839 | Develop | DDay Memo 1.9.4 소스코드 | hooni | 2015.10.03 | 0 |
838 | Develop | GCM 사용하기 2 (단말에 GCM 구현하기) | hooni | 2013.07.06 | 23402 |
837 | Develop | GCM 사용하기 3 (JSP로 GCM 푸시 서버 만들기) 4 | hooni | 2013.07.06 | 25411 |
836 | Develop | git 브런치 배우기 (링크) | hooni | 2013.07.09 | 20685 |
835 | Develop | GPL, AGPL, MPL,.. 한눈에 보는 오픈소스SW 라이선스 | hooni | 2014.10.14 | 1249 |
834 | Develop | How to Test SMTP AUTH using Telnet | hooni | 2018.04.05 | 1578 |
833 | Develop | JSON, BSON 변환 | hooni | 2013.04.23 | 11860 |
832 | Develop | Laravel 5 Failed opening required bootstrap/../vendor/autoload.php | hooni | 2018.01.24 | 1818 |
831 | Develop | Mac OS 에 Jenkins 설치하기 (Homebrew) 2 | hooni | 2017.03.15 | 8370 |
830 | Develop | macOS에 node, npm 설치하기 (homebrew) | hooni | 2021.11.06 | 1434 |