Estoy diseñando un formato de archivo binario desde cero, y me gustaría incluir algunos bytes mágicos al principio para que pueda identificarse fácilmente. ¿Cómo hago para elegir qué bytes? No conozco ningún registro central de números mágicos, ¿es solo cuestión de elegir algo bastante aleatorio que no haya sido identificado por, digamos, el comando de archivo en una caja UNIX cercana?¿Cómo elijo un buen número mágico para mi formato de archivo?
Respuesta
Aléjate de los números mágicos súper cortos. El hecho de que esté diseñando un formato binario no significa que no pueda usar una cadena de texto para el identificador. Sígalo por un char de EOF, y como una ventaja adicional las personas que cat o tipo su archivo binario no obtendrá un terminal destrozado.
El carácter EOF es bueno Consejo. –
No hay ningún personaje que haga que 'cat' deje de leer prematuramente (que puedo encontrar), por lo que alguien que' cat's tenga un formato binario va a tener un terminal destrozado haga lo que haga. Sin embargo, el carácter "sustituto" ("1A") es el que desea para "tipo". –
- 1. cómo obtener el número mágico de un archivo binario
- 2. Número mágico en boost :: hash_combine
- 3. ThreadPool SetMaxThreads y SetMinThreads Número mágico
- 4. ¿Cuál es el error de número mágico malo?
- 5. ¿Cómo se escribe un patrón de prueba de archivo mágico para que coincida con el final de un archivo?
- 6. ¿Cómo elijo la mejor cantidad de hilos para hyptherthreading/multicore?
- 7. parche de formato para un solo archivo
- 8. Enlaces de WCF - ¡tantos! ¿Cómo elijo uno?
- 9. ¿Cómo crear un buen formato hipermedia utilizando JMSSerializerBundle?
- 10. Error de número mágico persiste incluso después de reconstruir el archivo .pyc
- 11. Número mágico malo al intentar importar el módulo .pyc
- 12. ¿Cómo elijo un método de interpolación de imágenes? (Emgu/OpenCV)
- 13. Número de formato como dinero
- 14. JQuery Número de formato
- 15. Número de formato como porcentaje
- 16. formato de número de Android
- 17. ¿Cómo puedo obtener Express para producir un buen formato de HTML?
- 18. número de formato en C#
- 19. formato de número en miles
- 20. ¿Cómo elijo qué idioma usar en DrScheme?
- 21. Cómo obtener buen formato en los rieles de la consola
- 22. ¿Cómo compruebo GroupMe mi número?
- 23. ¿Cómo se utiliza un manipulador para dar formato a mi producción hexagonal con ceros izquierda acolchados
- 24. cambio de formato en vim para un buen diseño de columna
- 25. ¿Cómo elijo entre E_NOTIMPL y E_NOINTERFACE?
- 26. ¿Qué es un buen diseño para un archivo de registro de errores estándar?
- 27. valor mágico incompatible 1768713317 en el archivo de clase
- 28. CUDA: ¿y si elijo demasiados bloques?
- 29. XSL - problema de redondeo/número de formato
- 30. C++ formato de número hexadecimal
Eche un vistazo a esta pregunta, menciona una base de datos de números mágicos: http://stackoverflow.com/questions/55869/determine-file-type-of-an-image –
TABLA DE FIRMAS DEL ARCHIVO: http: // www.garykessler.net/library/file_sigs.html –
Fechado (como en "RFC borrador vencido"), pero interesante: https://tools.ietf.org/html/draft-main-magic-00 –