Qu'est-ce qu'un fichier délimité et à largeur fixe ?

Ordinateur portable avec tableur à l'écran

Les fichiers CSV sont utilisés pour lire les données dans des feuilles de calcul.

Crédit d'image : Stockbyte/Stockbyte/Getty Images

Chaque ligne d'un fichier représente une ligne de données, mais ces données sont généralement divisées en champs ou colonnes. Deux méthodes standard délimitent les champs. L'une consiste à avoir des champs de longueur fixe, et donc des enregistrements de longueur fixe; l'autre est d'avoir des champs de longueur variable avec des enregistrements de longueur variable. Les champs de longueur variable doivent être séparés par un symbole, qui est le délimiteur. Une base de données d'enregistrements de longueur variable produira un fichier délimité, une base de données d'enregistrements de longueur fixe produira un fichier de largeur fixe.

Délimiteurs

La forme la plus courante de fichier délimité utilise la virgule comme séparateur de champ. Ces fichiers sont appelés fichiers de valeurs séparées par des virgules (CSV). La virgule est adaptée aux données numériques, mais peut poser problème avec le texte. Les autres délimiteurs incluent la barre d'espace (" ") ("|") ou le signe chapeau ("^"). Le concepteur de fichiers ou le programmeur doit trouver un caractère rarement utilisé dans les données. Parfois, il peut être nécessaire d'utiliser une combinaison de caractères.

Vidéo du jour

Champs fixes

Il n'est pas toujours possible de garantir qu'un caractère ne sera jamais utilisé dans les données à stocker dans des fichiers, donc la difficulté de trouver un délimiteur approprié peut rendre les champs de longueur fixe préférables. Ce format présente des frais généraux à la fois dans le stockage et le traitement, les fichiers délimités sont donc plus courants. Un champ de longueur fixe doit être rempli. Les formes les plus courantes de remplissage sont le remplissage à gauche avec des zéros pour les données numériques et le remplissage à droite avec des espaces pour le texte.

Procédures

Qu'un fichier soit de largeur fixe ou qu'il contienne des champs délimités, les programmes d'écriture et de lecture doivent suivre les mêmes conventions. Un programme recevant un fichier de largeur fixe doit d'abord connaître la longueur et le type de données de chaque fichier. Un programme recevant des fichiers délimités doit connaître le délimiteur à rechercher.

Enregistrements rejetés

Dans chaque cas, les programmes d'importation devraient avoir des procédures de rapport d'exception qui écrivent les enregistrements rejetés dans un fichier séparé. La raison la plus courante pour laquelle un enregistrement délimité est rejeté est que le délimiteur apparaît dans les données, créant des colonnes supplémentaires. Les enregistrements de largeur fixe sont généralement rejetés parce qu'ils sont trop longs. Les enregistrements courts ne provoquent généralement pas d'erreurs. Les champs finaux seront vides. Si les champs finaux sont obligatoires, les enregistrements courts seront rejetés.