Bonjour!
J'ai une trame que je dois découper en champs, mais mon problème est que certains champs n'ont pas une taille fixe; J'aurais aimé faire une déclaration type champs de bits mais ce n'est pas possible avec les strings

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
struct ETI_NI
{       
       string Erreur;
       string Fsync;
       string FCT;
       string FICF;
       string NST;
       string FP;
       string MID;
       string FL;
       string STC;
       string EOH;
       string MST;
       string EOFile;
       string TIST;
       string Padding;
 
      //Décomposition de la trame en champs
       void Attribute_fields (string trame_ok)
       {
            Erreur = trame_ok.substr(0,8); 
            Fsync = trame_ok.substr(8,24); 
            FCT = trame_ok.substr(32,8);
            FICF = trame_ok.substr(40,1);
            NST = trame_ok.substr(41,7);
            FP = trame_ok.substr(48,3); 
            MID = trame_ok.substr(51,2);
            FL = trame_ok.substr(53,11);              
 
 
       }
 
 
};
Mon champs STC sera de taille variable en fonction de la valeur de NST (J'ai déjà crée la fonction convertissant du string vers le décimal)

QQun peut m'aider?
Merci