美文网首页
通过图片的data数据第一个字节来判断真实的图片格式

通过图片的data数据第一个字节来判断真实的图片格式

作者: lixiangdev | 来源:发表于2016-08-17 16:06 被阅读0次
- (NSString *)contentTypeForImageData:(NSData *)data {
    uint8_t c;
    [data getBytes:&c length:1];
    switch (c) {
        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;
}

相关文章

网友评论

      本文标题:通过图片的data数据第一个字节来判断真实的图片格式

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