, , , Trouver le type d’un fichier

Pour connaitre le type d’un fichier, vous pouvez vous baser sur le type du Fichier .PDF, .JPG, etc …

Ou vous baser sur le nombre magique , ou signature binaire soit les 4 premiers octets en Hexa 

SELECT HEX(SUBSTR(LINE, 14)) AS SIGNATURE
FROM TABLE(QSYS2.IFS_READ_BINARY(‘/home/test.pdf’))
FETCH FIRST 1 ROW ONLY;

Voici un exemple sur 4 fichiers que vous pouvez trouver sur votre partition   

SELECT CASE
         WHEN HEX(SUBSTR(LINE,1,4)) = '25504446'
         THEN 'PDF'
         WHEN HEX(SUBSTR(LINE,1,4)) = '89504E47'
         THEN 'PNG'
         WHEN HEX(SUBSTR(LINE,1,4)) = 'FFD8FFE0'
         THEN 'JPG'
         WHEN HEX(SUBSTR(LINE,1,4)) = '504B0304'
         THEN 'ZIP'
         ELSE 'Autre' // inconnu
       END AS TYPE 
FROM TABLE(QSYS2.IFS_READ_BINARY('/home/vert.jpg'))
FETCH FIRST 1 ROW ONLY;

Résultat :

Conclusion :

C’est simple, et efficace, il y a sans doute d’autres manières de faire