Pour l'avoir déjà fait, même si ta description est un peu longue mais ne change pas souvent, tu gagneras énormément de temps à la saisir dans un tableau fixe en working de ton script (peu importe le langage).
Un scanner de copy Cobol est assez galère à faire, du fait des multiples manière de coder les formats, les occurs, les COMP et autres joyeusetés !
Et je n'ai pour l'instant trouvé aucun autre langage micro (Unix, Windows etc..) qui permette d'appliquer une clause copy sur un fichier à la manière du Cobol.
En VBA, je passe par des instructions du style
Donnée = Mid(LigneEntière, debutDonnée, finDonnée) après avoir déterminé la longueur de chaque donnée grâce à la copy.