Télécharger lire_CSV.dgibi

Retour à la liste

Numérotation des lignes :

  1.  
  2. * fichier : lire_CSV.dgibi
  3. ************************************************************************
  4. ************************************************************************
  5.  
  6. * Presentation : Ce cas-test permet de lire directement des fichiers au
  7. * format 'CSV'. Le resultat est un objet de type
  8. * TABLE indice de 1 a N. Chaque indice est un LISTREEL
  9. * qui comporte les valeurs lues.
  10. * De plus,il teste la possibilite de demarrer et/ou de
  11. * finir la lecture des donnees a la ligne souhaitee.
  12. *
  13. * Creation : 02/04/2015
  14. * Createur : C. BERTHINIER
  15.  
  16.  
  17. * Modification : 05/06/223
  18. * Modifie par : A. ROS
  19. *******************************************
  20.  
  21. * repertoire des fichiers "divers"
  22. DIVERS ='VENV' 'CASTEM_DIVERS';
  23.  
  24. * Initialisation du nombre de cas
  25. NBCAS = 0;
  26.  
  27. * Premier cas : Lecture en colonnes
  28. TAB1 ='LIRE' 'CSV' ('CHAINE' DIVERS '/fichier_ACQ.txt') 'COLO';
  29. 'LIST' TAB1 ;
  30. 'LIST' TAB1. 1 ;
  31. LUE11 = PROG 321 1e-3 1 2 1 ;
  32. 'LIST' TAB1. 2 ;
  33. LUE12 = PROG 564.654 1e5 2 4 2;
  34. 'LIST' TAB1. 3 ;
  35. LUE13 = PROG 88764.2 1e04 3 6 3 ;
  36. 'LIST' TAB1. 4 ;
  37. LUE14 = PROG 135. 1e-2 5 8 4 ;
  38. NBCAS = NBCAS+1 ;
  39.  
  40. * Deuxieme cas : Lecture en lignes
  41. TAB2 ='LIRE' 'CSV' ('CHAINE' DIVERS '/fichier_ACQ.txt') 'LIGN';
  42. 'LIST' TAB2 ;
  43. 'LIST' TAB2. 1 ;
  44. LUE21 = PROG 321 564.654 88764.2 135.;
  45. 'LIST' TAB2. 2 ;
  46. LUE22 = PROG 1e-3 1e5 1e04 1e-02 ;
  47. 'LIST' TAB2. 3 ;
  48. LUE23 = PROG 1 2 3 5 ;
  49. 'LIST' TAB2. 4 ;
  50. LUE24 = PROG 2 4 6 8 ;
  51. 'LIST' TAB2. 5 ;
  52. LUE25 = PROG 1 2 3 4 ;
  53. NBCAS = NBCAS+1 ;
  54.  
  55. * Troisieme cas : Lecture en lignes avec début ligne 2 ;
  56. TAB3 ='LIRE' 'CSV' ('CHAINE' DIVERS '/fichier_ACQ.txt') 'DEBU' 2 'LIGN' ;
  57. 'LIST' TAB3 ;
  58. 'LIST' TAB3. 1 ;
  59. LUE31 = PROG 1e-3 1e5 1e04 1e-02 ;
  60. 'LIST' TAB3. 2 ;
  61. LUE32 = PROG 1 2 3 5 ;
  62. 'LIST' TAB3. 3 ;
  63. LUE33 = PROG 2 4 6 8 ;
  64. 'LIST' TAB3. 4 ;
  65. LUE34 = PROG 1 2 3 4 ;
  66. NBCAS = NBCAS+1 ;
  67.  
  68. * Quatrieme cas : Lecture en lignes avec fin ligne 3 ;
  69. TAB4 ='LIRE' 'CSV' ('CHAINE' DIVERS '/fichier_ACQ.txt') 'FIN' 3 'LIGN' ;
  70. 'LIST' TAB4 ;
  71. 'LIST' TAB4. 1 ;
  72. LUE41 = PROG 321 564.654 88764.2 135.;
  73. 'LIST' TAB4. 2 ;
  74. LUE42 = PROG 1e-3 1e5 1e04 1e-02 ;
  75. 'LIST' TAB4. 3 ;
  76. LUE43 = PROG 1 2 3 5 ;
  77. NBCAS = NBCAS+1 ;
  78.  
  79. * Cinquieme cas : Lecture en lignes avec Début ligne 2 et fin ligne 3 ;
  80. TAB5 ='LIRE' 'CSV' ('CHAINE' DIVERS '/fichier_ACQ.txt') 'DEBU' 2 'FIN' 3 'LIGN' ;
  81. 'LIST' TAB5 ;
  82. 'LIST' TAB5. 1 ;
  83. LUE51 = PROG 1e-3 1e5 1e04 1e-02 ;
  84. 'LIST' TAB5. 2 ;
  85. LUE52 = PROG 1 2 3 5 ;
  86. NBCAS = NBCAS+1 ;
  87.  
  88. * Sixieme cas : Lecture en colonnes avec Debut colonne 2 et fin colonne 3 ;
  89. TAB6 ='LIRE' 'CSV' ('CHAINE' DIVERS '/fichier_ACQ.txt') 'DEBU' 2 'FIN' 3 'COLO';
  90. 'LIST' TAB6 ;
  91. 'LIST' TAB6. 1 ;
  92. LUE61 = PROG 1e-3 1;
  93. 'LIST' TAB6. 2 ;
  94. LUE62 = PROG 1e5 2 ;
  95. 'LIST' TAB6. 3 ;
  96. LUE63 = PROG 1e04 3;
  97. 'LIST' TAB6. 4 ;
  98. LUE64 = PROG 1e-2 5;
  99. NBCAS = NBCAS+1 ;
  100.  
  101.  
  102. 'REPE' CAS NBCAS ;
  103. I1 = &CAS ;
  104. TAB ='CHAI' 'TAB'I1 ;
  105. TAB ='TEXT' TAB ;
  106. DIMLIST ='DIME' TAB ;
  107. 'REPE' NBLIST DIMLIST ;
  108. I2 = &NBLIST ;
  109. LUE ='CHAI' 'LUE' I1 I2 ;
  110. LUE ='TEXT' LUE ;
  111. TAB ='CHAI' 'TAB' I1 '.' I2 ;
  112. TAB ='TEXT' TAB ;
  113. diff1 = LUE - TAB ;
  114. MAX ='MAXI' 'ABS' Diff1 ;
  115. 'MESS' 'MAXI DE L ABSOLU DE LA DIFF EST' MAX ' POUR LA TAB.' I1 ;
  116. 'SI' (MAX '>' (('VALE' 'PREC') * 10)) ;
  117. 'MESS' ' IL Y A UNE ERREUR DE PRECISION ';
  118. 'ERRE' 5 ;
  119. 'FINS';
  120. 'FIN' NBLIST ;
  121. 'FIN' CAS ;
  122. FIN ;
  123.  
  124.  
  125.  

© Cast3M 2003 - Tous droits réservés.
Mentions légales