美文网首页
NSData转换成其他类型对象

NSData转换成其他类型对象

作者: 随风飘荡的小逗逼 | 来源:发表于2016-09-29 10:04 被阅读718次

    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;

    }

    相关文章

      网友评论

          本文标题:NSData转换成其他类型对象

          本文链接:https://www.haomeiwen.com/subject/vhgcyttx.html