Object-c中各種資料類型之間的轉換

來源:互聯網
上載者:User

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];

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.