美文网首页
通过图片NSData数据来获取图片格式

通过图片NSData数据来获取图片格式

作者: 伯牙呀 | 来源:发表于2018-06-04 15:38 被阅读13次
+ (NSString *)imageTypeWithData:(NSData *)data {
    
    uint8_t type;
    
    [data getBytes:&type length:1];
    
    switch (type) {
            
        case 0xFF:
            return @"jpeg";
            
        case 0x89:
            return @"png";
            
        case 0x47:
            return @"gif";
            
        case 0x49:
        case 0x4D:
            return @"tiff";
            
        case 0x52:
            if([data length] < 12) {
                return nil;
            }
            
            NSString *testString = [[NSString alloc] initWithData:[data subdataWithRange:NSMakeRange(0, 12)] encoding:NSASCIIStringEncoding];
            if([testString hasPrefix:@"RIFF"] && [testString hasSuffix:@"WEBP"]) {
                return@"webp";
            }
            
            return nil;
    }
    
    return nil;
}

相关文章

网友评论

      本文标题:通过图片NSData数据来获取图片格式

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