Tôi có một mảng byte nhỏ (dưới 25K) mà tôi nhận và giải mã như là một phần của phong bì thư lớn hơn. Đôi khi đây là một hình ảnh, và khi nó là hình ảnh, đôi khi nó là một jpg. Tôi không có thông tin ngữ cảnh nào khác ngoài mảng byte và cần xác định cả hai nếu đó là hình ảnh và nếu hình ảnh thuộc loại jpg.Cách xác định nội dung của một byte [] là một jpeg?
Có một số ma thuật hoặc các byte ma thuật tồn tại ở đầu, cuối hoặc tại một số khoảng bù mà tôi có thể xem xét để xác định nó không?
Một ví dụ về mã của tôi trông như thế này (từ bộ nhớ, không phải c/p):
byte[] messageBytesAfterDecode = retrieveBytesFromEnvelope();
if(null != messageBytesAfterDecode && messageBytesAfterDecode > 0){
if(areTheseBytesAJpeg(messageBytesAfterDecode)){
doSomethingWithAJpeg(messageBytesAfterDecode)
}else{
flagEnvelopeAsHavingBadContentInTheField();
}
}
Tôi thực sự cần điều gì sẽ đi vào phương pháp
areTheseBytesAJpeg(byte[] mBytes){}
, hoặc thậm chí một con trỏ với thông số chi tiết. Tôi hy vọng có một cách rất nhanh chóng để đưa ra quyết định này, kể từ khi tôi không thực sự muốn đọc chúng thành một hình ảnh vv
tất cả google - thậm chí nó được đặt trong kết quả: http://www.google.com/search?&q=jpg+magic+number – zsalzbank
Tốt. Hãy để tôi chạy thử nghiệm của tôi và tôi sẽ trở lại! – Kylar
thực sự tuyệt vời! của tôi là một nửa wikipedia, một nửa firefox. Phải là những gì làm tôi chậm lại. –