Retrouver le contenu du champ à partir de son indice
cs_manudel
Messages postés63Date d'inscriptionlundi 29 avril 2002StatutMembreDernière intervention 7 mars 2005
-
16 mai 2002 à 19:54
cs_Amadeus
Messages postés123Date d'inscriptionmercredi 2 janvier 2002StatutMembreDernière intervention15 mars 2004
-
17 mai 2002 à 14:15
je dispose d'un fichier texte avec des champs de longueur délimités,
je souhaiterais trouver, avec une fonction, le contenu de chaque champ, en spécifiant la source de données, et le numéro du champ.
J'ai écris la fonction suivante, malheureusement, cela ne marche pas, j'aimerais
pouvoir comprendre....
Si vous avez une idée, n'hésitez pas !
function TfmMain.GetChamp(Source : String; Champ : Integer) : String;
type TStructFich = array[1..6] of Integer;
var i, idx : Integer;
sf : TStructFich;
begin
// idx := 0;
sf[1] := 2;
sf[2] := 16;
sf[3] := 7;
sf[4] := 6;
sf[5] := 2;
sf[6] := 5;
for i := 1 to (Champ-1) do
begin
idx := idx + sf[i];
Result := Copy(Source, idx+1, sf[Champ]);
end;
end;
cs_Amadeus
Messages postés123Date d'inscriptionmercredi 2 janvier 2002StatutMembreDernière intervention15 mars 20042 17 mai 2002 à 14:15
Tu donne la ligne, le séparateur et le numéro de segment que tu veux et la fonction renvoie la chaine concerné
Ex:
s:= azerty;qsdfg;wxcvb;ghjkl
Donnesegment(s,';',1) renvoie qsdfg