2010-08-25 14 views
13

Bir ikili dosya formatını sıfırdan tasarlıyorum ve başlangıçta bazı sihirli baytlar eklemek istiyorum, böylece kolayca tanımlanabilir. Hangi baytları seçmeye nasıl başlarım? Sihirli sayıların herhangi bir merkezi kayıtçılığının farkında değilim, bu yüzden sadece bir UNIX kutusundaki dosya komutuyla zaten tanımlanmayan, oldukça rastlantısal bir şey seçmek meselesi mi?Dosya formatım için iyi bir sihirli sayıyı nasıl seçerim?

+0

Bu soruya bir bakın, sihirli sayılardan oluşan bir veritabanından bahseder: http://stackoverflow.com/questions/55869/determine-file-type-of-an-image –

+0

DOSYA SIGNATURES TABLO: http: // www.garykessler.net/library/file_sigs.html –

+0

Tarihli ("sonlandırılmış taslak RFC" deki gibi), ancak ilginç: https://tools.ietf.org/html/draft-main-magic-00 –

cevap

18

Süper kısa sihirli sayılardan uzak durun. İkili bir biçim tasarlamanız, tanımlayıcı için bir metin dizesi kullanamayacağınız anlamına gelmez. Bunu bir EOF char tarafından takip edin ve cat ya da tip numaralı dosyalara ek olarak, ikili dosyanızın karma bir terminal almayacaktır.

+7

EOF karakteri iyi tavsiye. –

+0

'Kedinin okumayı durduramaz hale getirecek bir karakter yok (bulabildiğim), yani bir ikili formatı olan bir kedinin yaptıklarınız ne olursa olsun karışık bir terminali olacak. "Replace" karakteri ('1A') 'type' için istediğiniz olsa da. –

İlgili konular