2010-08-25 18 views
13

Tôi đang thiết kế một định dạng tệp nhị phân từ đầu và tôi muốn bao gồm một số byte ma thuật ngay từ đầu để có thể dễ dàng xác định nó. Làm thế nào để tôi đi về việc chọn byte nào? Tôi không nhận thức được bất kỳ đăng ký trung tâm của số ma thuật, do đó, nó chỉ là vấn đề chọn một cái gì đó khá ngẫu nhiên mà chưa được xác định bởi, nói, lệnh tập tin trên một hộp UNIX gần đó?Làm cách nào để chọn số ma thuật tốt cho định dạng tệp của tôi?

+0

Hãy xem câu hỏi này, nó đề cập đến cơ sở dữ liệu về số ma thuật: http://stackoverflow.com/questions/55869/determine-file-type-of-an-image –

+0

TÍN HIỆU TƯƠNG LAI BẢNG: http: // www.garykessler.net/library/file_sigs.html –

+0

Ngày (như trong "RFC dự thảo hết hạn"), nhưng thú vị: https://tools.ietf.org/html/draft-main-magic-00 –

Trả lời

18

Tránh xa các số ma thuật siêu ngắn. Chỉ vì bạn đang thiết kế một định dạng nhị phân không có nghĩa là bạn không thể sử dụng chuỗi văn bản cho số nhận dạng. Theo đó bằng một thẻ EOF, và như một người tiền thưởng thêm, những người mèo hoặc loại tệp nhị phân của bạn sẽ không nhận được thiết bị đầu cuối bị ngắt.

+7

Ký tự EOF rất tốt khuyên bảo. –

+0

Không có nhân vật nào khiến cho 'mèo' ngừng đọc sớm (mà tôi có thể tìm thấy), vì vậy ai đó' định dạng nhị phân sẽ có một thiết bị đầu cuối bị xé xạc bất cứ điều gì bạn làm. Ký tự "thay thế" ('1A') là ký tự bạn muốn cho' type'. –

Các vấn đề liên quan