Accueil > Forum > > > > Fin de lecture fichier prématurée
Fin de lecture fichier prématurée
lundi 13 novembre 2006 à 21:46:57 |
Fin de lecture fichier prématurée

PatDeLaYaute
|
Bonsoir tout le monde, voilà j'ai une fonction qui lit un fichier texte, jusque là pas de problème, j'ai déclaré toutes mes variables, ouvert mon fichier, (voir code pour les septiques) F = FreeFile Open CheminAcces & TabFichierPRJ(i) For Input As #F
G = FreeFile Open CheminAcces & "prjTmp\" & TabFichierPRJ(i) For Output As #G
TextePRJtmp = ""
Do While Not EOF(F) Line Input #F, Texte Texte = RTrim(Texte)
If Trim(Texte) <> "" Then If Mid(Texte, 1, 1) <> "'" Then If InStr(1, Texte, "Begin VB.") = 0 Then VerifSautDeLigne: If Mid(Texte, Len(Texte), 1) = "_" Then Line Input #F, TexteTmp Texte = Mid(Texte, 1, Len(Texte) - 1) & TexteTmp GoTo VerifSautDeLigne End If End If End If End If
Print #G, Texte
Loop Close #F Close #GLe problème c'est qu'arrivé à la ligne 4434 (sur les 5902) la boucle se termine ! et donc il me manque une bonne partie de mon fichier. Et ce problème n'apparait que sur un seul fichier! (le plus gros (276ko) Je précise que même en supprimant la fonction présente dans la boucle le résultat est le même. Si quelqu'un a une idée du problème. Merci d'avance PatDeLaYaute
|
|
lundi 13 novembre 2006 à 22:25:34 |
Re : Fin de lecture fichier prématurée

dthuler
|
Réponse acceptée !
Salut,
Quel genre de fichier lis-tu, des fichiers ASCII ? As-tu vérifié si ta ligne 4434 ne contient pas un caractère spécial ? Quelle est sa particularité, as-tu essayé de l'effacer pour tester si ça passe ?
David
|
|
lundi 13 novembre 2006 à 23:32:22 |
Re : Fin de lecture fichier prématurée

PatDeLaYaute
|
Salut David, merci beaucoup, effectivement cette ligne ( 'Print #F, "1A;") comporte un particularité. Il s'agit d'un caractère qui indique la fin d'un fichier, mais je ne pensais pas qu'il puisse avoir cet effet lors d'une simple lecture et surtout rencontré dans ce contexte. Pour info je suis en train d'écrire une application pour traduire mon logiciel (post compliation) et donc je manipule les fichiers sources. C'était bête comme chou, mais fallait y penser ! Merci  PatDeLaYaute
|
|
lundi 13 novembre 2006 à 23:34:20 |
Re : Fin de lecture fichier prématurée

Renfield
|
Je pense qu'effectivement cette ligne contient un caractère que VB interprete comme une fin de fichier....
le plus simple, surement, si tu ne peux pas agir sur le fichier d'entrée, est de le lire en entier (ou par blocs) et de jouer avec, après, en mémoire... (plus de lecture ligne a ligne)
Renfield Admin CodeS-SourceS- MVP Visual Basic
|
|
lundi 13 novembre 2006 à 23:39:30 |
Re : Fin de lecture fichier prématurée

jack
|
Salut Non, les caractères spéciaux seraient lus, mal interprétables, mais lus (comme n'importe quel code ascii) Je pense que ton problème vient du fait que tu lises une première ligne, mais que, à l'intérieur de ta boucle, tu lises à plusieurs reprises de nouvelles lignes dans le fichier. Le "Not EOF(f)" ne fonctionnera que lorsque l'instruction Loop sera rencontrée. Dans cette fameuse boucle de lecture interne, tu sautes avec un Goto à une ligne antérieure. Le problème, c'est que cette ligne est à l'extérieur du If --> VB ne sait accumuler une cascade de 16 If-Then (il me semble) Arrivé à cette limite, le programme se plante, et ma boule de cristal me dit que tu as un "On Error Resume Next" quelque part ... Essaye de remplacer le If-Goto-EndIf par un Do While - Loop, ça t'obligera à équilibrer les syntaxes qui marchent par couple, un truc du genre : If InStr(1, Texte, "Begin VB.") = 0 Then Do While Mid(Texte, Len(Texte), 1) = "_" Line Input #F, TexteTmp Texte = Mid(Texte, 1, Len(Texte) - 1) & TexteTmp Loop End If
Et, pour info : Mid(Texte, Len(Texte), 1) --> Right(Texte, 1) Mid(Texte, 1, Len(Texte) - 1) ---> Left(Texte, Len(Texte) - 1)
Vala Jack, MVP VB NB : Je ne répondrai pas aux messages privés
Champion du monde de boule de cristal - 2005 Le savoir est la seule matière qui s'accroit quand on
|
|
lundi 13 novembre 2006 à 23:57:53 |
Re : Fin de lecture fichier prématurée

PatDeLaYaute
|
Que de réponses, Le problème maintenant est résolu, car le caractère incriminé étant dans un ligne de code mise en commentaire, je l'ai donc supprimé et plus de soucis. Jack => merci pour la limite de 16 If que je ne connaissais pas et l'optimisation du code! Je serais pointilleux je mettrais une boucle au lieu du if et du saut, en même temps cette fonction permet de ramener à une seule et unique ligne les codes que l'on écrit sur plusieurs lignes avec un _ , je crois que rare sont ceux qui fassent des lignes de codes aussi longues ! Ah et si je peux me permettre, il faudrai donner un petit coup de chiffon sur ta boule de cristal  , car je n'ai aucun "on error resume next" dans ma fonction, je n'aime pas trop cette instruction. Merci a tous PatDeLaYaute
|
|
Cette discussion est classée dans : fichier, problème, input, end, texte
Répondre à ce message
Sujets en rapport avec ce message
lecture fichier excel [ par manud31 ]
Voici mon code Private Sub Form_Load() On Error Resume Next 'les erreurs sont ignorées crlf = Chr$(13) + Chr$(10) Open "D:\ valeur_du_pas.xls" For Inp
socket : problème de latence entre la réception des données et l'écriture dans un fichier. [ par floxone ]
Salut,Je suis en train de développer un client ftp de base afin de manipuler les sockets en .net. J'ai un problème : quand je rapatri un .zip, il faut
[Vb .Net] Problème d'écriture de fichier texte [ par Neow26 ]
Salut à tous,Donc voila mon problème : je souhaiterais écrire un fichier texte contenant des instructions ftp à executer à partir d'un fichier .batMon
problème import fichier texte [ par tedparker ]
Bonjour,j'importe directement un fichier texte contenant des enregistrements dont les champs sont séparés par des points-virgules (un csv en fait).Tou
Problème fichier texte ANSI-Unicode [ par aurelien2723 ]
Salut!Je fais un petit programme en VB6, sous Windows XP.J'ai un soucis avec le type d'encodage d'un fichier texte.Il me faut en sortie un fichier Uni
connection fichiers texte [ par antoine_ferard ]
J'ai un problème concernant la connection "multi-utilisateurs" à une table"access" attachée à un fichier texte.Est-il possible de se connecter à plusi
lecture de fichier texte et concatenation [ par SEBOBS ]
bonjour, je lis un fichier texte, les donnees ont la forme suivante : a,b,c,d,e,f j ai sur plusieurs ligne a,b,c,,e, et a,b,c,d,, ou a,b,c sont ident
Probleme fin de fichier texte [ par Jeremy014 ]
Bonjour,J'ai fait une macro sous excel pour lire un fichier texte et en extraire des informations.J'ai presque tout le temps une erreur car je pense q
Problème d'accent sous DOS [ par Henkala ]
Bonjour,Je génère à partir de VB 2008 express le fichier texte suivant :Lines6.Insert(10, <font color="#a3151
extraction des information d'un fichier [ par pegguy ]
Private Sub Form_Load()'0n Error Resume Next 'Les erreurs sont ignorees'Open "c:\it\stat\STAT01-05 2001\stat26e.txt" For Input As #1Open "c:\it\stat\S
Livres en rapport
|
Derniers Blogs
TECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICESTECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICES par ROMELARD Fabrice
Animé par: Gaetan Bouveret et Julien Chomarat Business Connectivity Services (BCS) est dans SharePoint 2010 la version 2 de Business Data Catalog (BDC dans SharePoint 2007). Il s'agit de la solution permettant de visualiser des données provenan...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice [DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE[DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE par orion
Comme de nombreux geek, je suis un grand amateur de série TV et je rate régulièrement des épisodes de mes séries préférés. Une solution s'offre à vous avec ce merveilleux site : Tv Gorge - www.tvgorge.com Moteur de recherche à l'appui, vous pouvez ...
Cliquez pour lire la suite de l'article par orion TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010 par ROMELARD Fabrice
Animé par: Vincent Bellet et Baptiste Giraudier La BI dans SharePoint 2010, Les nouveaux services d'application dans SP2010 et SQL Server Reporting services 2008 R2. La BI dans SharePoint est généralisée pour tous afin de permettre à tous les coll...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice TECHDAYS PARIS 2010 : PLAN DE MIGRATION VERS SHAREPOINT 2010TECHDAYS PARIS 2010 : PLAN DE MIGRATION VERS SHAREPOINT 2010 par ROMELARD Fabrice
Animé par: Arnault Nouvel et Antoine Dongois Le processus à prendre : Apprendre (découvrir la plateforme) Préparer (documenter l'historique et choisir la méthode de MAJ) Test (Test de MAJ) Implémenter (Effectuer la MAJ) Valid...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Logiciels
DB-MAIN (9.1.0)DB-MAIN (9.1.0)DB-MAIN is a data-modeling and data-architecture tool. It is designed to help developers and anal... Cliquez pour télécharger DB-MAIN Xilisoft DPG Convertisseur (5.1.37.0120)XILISOFT DPG CONVERTISSEUR (5.1.37.0120)Xilisoft DPG Convertisseur offre aux fans de Nintendo DS une bonne solution leur permettant de dé... Cliquez pour télécharger Xilisoft DPG Convertisseur GraphicsGale (2.01.01)GRAPHICSGALE (2.01.01)GraphicsGale est un logiciel de PixelArt avec de nombreuse fonctionnalités permettant de réalisé ... Cliquez pour télécharger GraphicsGale Architecte 3D (Platinum 2010)ARCHITECTE 3D (PLATINUM 2010)Architecte 3D Platinium vous permet de concevoir facilement les plans votre future maison, de l'é... Cliquez pour télécharger Architecte 3D TeamViewer 5 (TeamViewer 5)TEAMVIEWER 5 (TEAMVIEWER 5)Dépanner un ami,expliquer une manipulation devient un jeu d'enfant.
Prise en main d'un autre ord... Cliquez pour télécharger TeamViewer 5
|