gpt4 book ai didi

iphone - 从 NSData 或 UIImage 查找图像类型

转载 作者:行者123 更新时间:2023-11-30 10:42:42 25 4
gpt4 key购买 nike

我正在从第三方提供的 URL 加载图像。 URL 上没有文件扩展名(或文件名)(因为它是一个模糊的 URL)。我可以从中获取数据(以 NSData 的形式)并将其加载到 UIImage 中并正常显示。

我想将这些数据保存到文件中。但是,我不知道数据是什么格式(PNG、JPG、BMP)?我假设它是 JPG(因为它是来自网络的图像),但是是否有一种编程方式可以确定?我浏览了 StackOverflow 和文档,但没有找到任何东西。

TIA。

<小时/>

编辑:我真的需要文件扩展名吗?我将其保存到外部存储(Amazon S3),但考虑到它将始终在 iOS 或浏览器的上下文中使用(两者在没有扩展的情况下解释数据似乎都很好),也许这不是问题.

最佳答案

如果您有图像文件的 NSData,那么您可以通过查看第一个字节来猜测内容类型:

+ (NSString *)contentTypeForImageData:(NSData *)data {
uint8_t c;
[data getBytes:&c length:1];

switch (c) {
case 0xFF:
return @"image/jpeg";
case 0x89:
return @"image/png";
case 0x47:
return @"image/gif";
case 0x49:
case 0x4D:
return @"image/tiff";
}
return nil;
}

关于iphone - 从 NSData 或 UIImage 查找图像类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56453999/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com