Bonjour,

j'ai un petit souci avec un vieux programme en VB6, je lis un fichier avec des lignes de longueur fixe (sans caractère de fin de ligne) et j'utilise la fonction LOF pour calculer le nombre d'enregistrement à traiter dans une boucle For, mais ça ne fonctionne plus avec des fichiers de plus de 2Go (exemple pour un fichier de 2,3Go LOF renvoi un nombre négatif ...), exemple de code
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
Type FicIn
    enr as string*400
end type
 
Dim Fic as string
Dim Enr0 as Ficin
 
    Fic = "<chemin du fichier>"
    Open Fic For Random as #1 Len=len(Enr0)
    nbEnr = LOF(1) / Len(Enr0)
    For nEnr=1 To nbEnr
        ...
        GET #1,nEnr,Enr0
        traitement de chaque enregistrement Enr0
        ...
    Next nEnr
    Close
Existe-t-il une méthode simple pour mettre à jour le programme (en restant en VB6) pour remplacer la fonction LOF et garantir que le GET continuera de fonctionner au delà des 2Go ?

Merci de votre retour
Alain