【发布时间】:2013-05-24 19:07:59
【问题描述】:
我基本上是在阅读图片文件的标题并进行快速比较以查看它实际上是什么类型的文件。 BMP、GIF、PNG 都很容易,因为它们的标题分别包含 BM、GIF 和 PNG 来识别自己。 JPG 让我陷入了一个循环。
jpg 的前 3 个字节往往是 0xff\0xd8\0xff,而对于我来说,无论我如何设置,我都无法通过简单的比较获得真正的价值。
我读取了前 4 个字节:
if data[0, 3] == "\xff\xd8\xff"
puts "This is a JPG"
end
我知道我很接近,但我就是无法让它工作。请让我知道我在这里错过了什么。
注意:我知道有宝石可以为我做这件事,但我不想使用宝石。就这么简单。
【问题讨论】:
-
您的数据是什么样的?
-
@Anand 我使用 data[0, 3] 来获取我读入的 4 个字节的前 3 个字节