1,NSData 與 NSString
NSData --> NSString
NSString *aString = [[NSString alloc] initWithData:adata encoding:NSUTF8StringEncoding];
NSString --> NSData
NSString *aString = @"1234";
NSData *aData = [aString dataUsingEncoding: NSUTF8StringEncoding];
2,NSData 與 Byte
NSData --> Byte
NSString *testString = @"1234567890";
NSData *testData = [testString dataUsingEncoding: NSUTF8StringEncoding];
Byte *testByte = (Byte *)[testData bytes];
Byte --> NSData
Byte byte[] = {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23};
NSData *adata = [[NSData alloc] initWithBytes:byte length:24];
3,NSData 與 UIImage
NSData --> UIImage
UIImage *aimage = [UIImage imageWithData: imageData];
//例:從本地檔案沙箱中取圖片並轉換為NSData
NSString *path = [[NSBundle mainBundle] bundlePath];
NSString *name = [NSString stringWithFormat:@"ceshi.png"];
NSString *finalPath = [path stringByAppendingPathComponent:name];
NSData *imageData = [NSData dataWithContentsOfFile: finalPath];
UIImage *aimage = [UIImage imageWithData: imageData];
UIImage-> NSData
NSData *imageData = UIImagePNGRepresentation(aimae);
4,NSData 與 NSMutableData
NSData --> MSMutableData
NSData *data=[[NSData alloc]init];
NSMutableData *mdata=[[NSMutableData alloc]init];
mdata=[NSData dataWithData:data];
5,NSData合并為一個NSMutableData
- (NSString *)filePathWithName:(NSString *)filename { NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *documentsDirectory = [paths objectAtIndex:0]; return [documentsDirectory stringByAppendingPathComponent:filename]; } - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { //音頻檔案路徑 NSString *mp3Path1 = [[NSBundle mainBundle] pathForResource:@"1" ofType:@"mp3"]; NSString *mp3Path2 = [[NSBundle mainBundle] pathForResource:@"2" ofType:@"mp3"]; //音頻資料 NSData *sound1Data = [[NSData alloc] initWithContentsOfFile: mp3Path1]; NSData *sound2Data = [[NSData alloc] initWithContentsOfFile: mp3Path2]; //合并音頻 NSMutableData *sounds = [NSMutableData alloc]; [sounds appendData:sound1Data]; [sounds appendData:sound2Data]; //儲存音頻 NSLog(@"data length:%d", [sounds length]); [sounds writeToFile:[self filePathWithName:@"tmp.mp3"] atomically:YES]; [window makeKeyAndVisible]; return YES; }
6 NSString 合并
NSString* string; // 結果字串 NSString* string1, string2; //已存在的字串,需要將string1和string2串連起來 //方法1. string = [NSString initWithFormat:@"%@,%@", string1, string2 ]; //方法2. string = [string1 stringByAppendingString:string2]; //方法3 . string = [string stringByAppendingFormat:@"%@,%@",string1, string2];