Nous nous efforçons de fournir des solutions logicielles rapides, efficaces et abordables qui établissent de nouveaux standards dans l'industrie du développement logiciel.
  • Page d'accueil de R-Studio
  • Documentation technique R-Studio

Personnalisation des types de fichiers II


A l'heure actuelle R-Studio prend en charge deux versions de description de types de fichiers. La version 2 est une version étendue de la version 1 héritée, en ajoutant des décalages de signatures variables et une combinaison ET/OU de plusieurs signatures dans un type de fichier. La version de la description du type de fichier est spécifiée par l'attribut de la version de la section FileTypeList . La version 1 est l'option par défaut.

Structure des fichiers

Eléments de la description du type de fichier communs aux versions 1 et 2

En-tête du fichier

Le fichier commence par un en-tête standard XML

<?xml version="1.0" encoding="utf-8"?>

Section FileTypeList

<FileTypeList>

Attributs :

version

1.0

2.0

Optionnel

Version de la description du type de fichier

Par défaut : 1.0

Un élément de fermeture est requis </FileTypeList> .

Commentaires

<!-- Comment string -->

Une chaîne XML standard pour un commentaire.

Version 1 de la description du type de fichier

Exemple de fichier signature

 <FileTypeList>

   <FileType id="2" group="archive" description="ARJ Archive" extension="arj">

     <Signature offset="3" count="1">Abc\x5c\x00\x04</Signature>

     <Signature offset="9" count="2">\x23\x01\xf4</Signature>

   </FileType>

 </FileTypeList>

Section FileType

Il s'agit d'une description de chaque fichier de signature.

Attributs :

Id

<u32>

Requis

Identifiant du type de fichier numérique. Doit être unique pour chaque type de fichier.

 

group

<string>

Optionnel

Spécifie un groupe de type de fichier dans lequel les fichiers trouvés apparaîtront. Vous pouvez spécifier soit vos propres groupes soit ceux prédéfinis dans la boîte de dialogue Types de fichiers . Voir le tableau ci-dessous.

Par défaut : inconnu

description

<string>

Optionnel

Brève description du fichier

Par défaut : null (pas de description)

features

NO_SCAN

TXT_ANSI

TXT_UNICODE

Optionnel

Propriétés supplémentaires du type de fichier. Si vous souhaitez spécifier plusieurs propriétés, elles doivent être séparées par un espace.

Par défaut : 0

extension

<string>

Optionnel

Extension de fichier.

Par défaut : null (pas d'extension)

Drapeaux des propriétés du type du fichier

NO_SCAN

Ne doit pas être analysé. Si cette option est utilisée, R-Studio ne recherchera pas ce genre de type de fichier. Ce genre de fichiers sera affiché lors du tri des fichiers par extensions.

TXT_ANSI

Le fichier peut être visualisé sous forme de texte ANSI. Si ce drapeau est spécifié, le fichier peut être correctement représenté sous forme de texte ANSI. Lors de la prévisualisation, ce fichier sera immédiatement envoyé à l'éditeur de texte/hexadécimal .

TXT_UNICODE

Le fichier peut être visualisé sous forme de texte UNICODE. Si ce drapeau est spécifié, le fichier peut être correctement représenté sous forme de texte UNICODE. Lors de la prévisualisation, ce fichier sera immédiatement envoyé à l'éditeur de texte/hexadécimal .

Liste des groupes de type de fichier prédéfinis

Groupe

Nom dans la boîte de dialogue Types de fichiers .

archive

Archive des fichiers

graphics

Graphisme/Photo

internet

Fichiers liés à Internet

multimedia

Fichiers multimédia

audio

Multimédia : Fichiers audio

video

Multimédia : Fichiers vidéo

font

Police

document

Document :

doc_database

Document : Base de données

doc_sheet

Document : Feuille de calcul

exe

Exécutable/Librairie/DLL

unknown

Autres types de fichiers

Cette section peut contenir un nombre illimité d'éléments de signature . S'il y a plusieurs éléments de signature , cela signifie que toutes ces signatures sont présentes simultanément dans le fichier. De telles signatures doivent avoir des attributs de décalage différents et ils ne devraient pas se chevaucher.

Signature d'élément

L'élément contient une valeur de chaîne de la signature du fichier composée de caractères ASCII et d'octets hexa dans le format \xhh , où hh est un code d'octets hexadécimal. S'il n'y a pas de nombre hexadécimal après \x , \x sont traités comme une partie de la section de la chaîne de la signature

Attributs :

offset

<u16>

Optionnel

Décalage décimal pour la signature

Par défaut : 0

count

<u16>

Optionnel

Nombre décimal indiquant le nombre de signatures de la même longueur. Utilisé lorsque plusieurs signatures de la même longueur commençant avec le même décalage peuvent être présentes dans un fichier. Dans ce cas, elles doivent être écrites de façon séquentielle dans l'élément, et l'attribut taille spécifie la longueur de la signature. La taille du décompte* doit être égale au nombre d'octets dans l'élément.

Si seule une signature peut être sur ce décalage, le décompte doit être égal à " 1 ", et la taille doit être égale à la longueur (le nombre d'octets) de la signature.

Par défaut : 1

size

<u16>

Optionnel

Nombre décimal indiquant le nombre d'octets dans la signature.

Par défaut : le nombre d'octets écrits dans l'élément.

from

begin

end

Optionnel

Indique à partir d'où le décalage est calculé.

Si depuis la fin, le décalage est depuis la fin du fichier pour le premier octet de la signature. Autrement dit, si la signature a une longueur de deux octets, la valeur de décalage doit être 2 .

Par défaut : début

Version 2 de la description du type de fichier

Exemple de fichier signature

<?xml version="1.0" encoding="utf-8"?>

<FileTypeList version="2.0">

 <FileType id="5626" group="_Test" description="Test file" extension="tst">

   <Begin combine="and">

     <Signature from="0" to="20">ABC</Signature>

     <Signature offset="1">CDEFG</Signature>

     <AND>

       <Signature offset="0">DE</Signature>

       <Signature offset="0">RTD</Signature>

       <OR>

         <Signature offset="12">CP</Signature>

         <Signature offset="16">RTD</Signature>

       </OR>

     </AND>

   </Begin>

   <End combine="or">

     <Signature from="3" to="20">ABC</Signature>

     <Signature offset="5">CDEFG</Signature>

     <AND>

       <Signature offset="2">DE</Signature>

       <Signature offset="3">RTD</Signature>

       <OR>

         <Signature offset="12">CP</Signature>

         <Signature offset="16">RTD</Signature>

       </OR>

     </AND>

   </End>

 </FileType>

</FileTypeList>

Section FileType

Il s'agit d'une description de chaque fichier de signature.

Attributs :

Similaires à ceux de la version 1.

La section peut contenir un élément Début et un élément Fin . Il doit contenir au moins l'un d'eux.

Exemple

<FileTypeList version="2.0">

   <FileType id="2" group="archive" description="ARJ Archive" extension="arj">

     <Begin [attributes]>

       ...

     </Begin>

     <End [attributes]>

       ...

     </End>

   </FileType>

 </FileTypeList>

Sections Begin et End

Précisent les positions des   signatures de type de fichier dans le fichier.

Attributs

combine

and

or

Optionnel

Indique l'ordre de l'opération logique (union ou intersection)

Par défaut : and

Ces sections peuvent contenir un élément parmi plusieurs éléments Signature . Et un ou plusieurs éléments OU ou ET . Si il y a plusieurs éléments à l'intérieur de la section, ils sont combinés selon l'attribut combiner .

Exemple :

 <FileTypeList version="2.0">

   <FileType id="2" group="archive" description="ARJ Archive" extension="arj">

     <Begin combine="or">

       <Signature [attributes]> ... </Signature>

       ...

       <Signature [attributes]> ... </Signature>

       <AND>

         ...

       </AND>

       <OR>

         ...

       </OR>

     </Begin>

     <End>

       <OR>

         ...

       </OR>

       <Signature [attributes]> ... </Signature>

       ...

       <Signature [attributes]> ... </Signature>

     </End>

   </FileType>

 </FileTypeList>

Sections AND et OR

Ces sections peuvent contenir un élément parmi plusieurs éléments Signature . Et un ou plusieurs éléments OU ou ET . Si il y a plusieurs éléments à l'intérieur de la section, ils sont combinés selon le type de section (logique ET ou OU ).

Exemple :

 <FileTypeList version=�2.0�>

   <FileType id="2" group="archive" description="ARJ Archive" extension="arj">

     <Begin>

       <Signature [attributes]> ... </Signature>

       ...

       <Signature [attributes]> ... </Signature>

       <AND>

         <Signature [attributes]> ... </Signature>

         <OR>

           <Signature [attributes]> ... </Signature>

           <AND>

             <Signature [attributes]> ... </Signature>

             <Signature [attributes]> ... </Signature>

           </AND>

           <OR>

             <Signature [attributes]> ... </Signature>

             <Signature [attributes]> ... </Signature>

           </OR>

         </OR>

         <Signature [attributes]> ... </Signature>

       </AND>

     </Begin>

   </FileType>

 </FileTypeList>

Signature d'élément

L'élément contient une valeur de chaîne de la signature du fichier composée de caractères ASCII et d'octets hexa dans le format \xhh , où hh est un code d'octets hexadécimal. S'il n'y a pas de nombre hexadécimal après \x , \x sont traités comme une partie de la section de la chaîne de la signature

Attributs :

offset

<u16>

Optionnel

Décalage décimal pour la signature

Par défaut : 0

from

<u16>

Optionnel

Nombre décimal indiquant le décalage le plus à gauche possible de la signature du fichier.

Ignoré si l'attribut décalage est spécifié.

Par défaut : non défini

to

<u16>

Optionnel

Nombre décimal indiquant le décalage le plus à droite possible de la signature du fichier.

Ignoré si l'attribut décalage est spécifié.

Par défaut : non défini

size

<u16>

Optionnel

Nombre décimal indiquant le nombre d'octets dans la signature.

Par défaut : le nombre d'octets écrits dans l'élément.

Exemple :

 <FileTypeList version="2.0">

   <FileType id="2" group="archive" description="ARJ Archive" extension="arj">

     <Begin>

       <Signature offset="3">Abc\x5c\x00\x04</Signature>

       <Signature from="9" to="15">\x23\x01\xf4</Signature>

     </Begin>

   </FileType>

 </FileTypeList>