///imageType枚挙
enum imageType{
/// - parameter imageType: JPG,PNG,Tiff,gif,webp,bmp,None
case JPG,PNG,Tiff,gif,webp,bmp,None
}
func contentTypeForImageData(data:NSData) -> imageType {
var c:UInt8?
data.getBytes(&c, length: 1)
switch c {
case 0xFF:
return imageType.JPG;
case 0x89:
return imageType.PNG
case 0x47:
return imageType.gif
case 0x49,0x4D:
return imageType.Tiff
case 0x42:
return imageType.bmp
case 0x52:
if (data.length < 12) {
return imageType.None;
}
let testString:NSString = NSString(data: data.subdata(with: NSMakeRange(0, 12)), encoding: String.Encoding.ascii.rawValue)!
if testString.hasPrefix("RIFF"),testString.hasSuffix("WEBP") {
return imageType.webp
}
default:return imageType.None
}
return imageType.None
}
iOS swift 通过文件头来判断图片类型
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 有时候,我们需要获取一个图片的格式和大小,但是却不想从内存中把它的整个文件从内存中读取出来 因为读取整个文件的内存...
- 首先了解UTI和MIME的概念 1.同一类型标识符(Uniform Type Identifier,UTI)代表I...
- 最近在做公司的一个视频工具,里面有需要判断文件是否是视频文件,那如何检测Android上的多媒体文件属于音频、视频...