Probléme d'importation de fichier texte

Résolu
Vianneyp Messages postés 82 Date d'inscription jeudi 6 juillet 2006 Statut Membre Dernière intervention 6 janvier 2010 - 24 sept. 2007 à 19:07
dannymoh Messages postés 2 Date d'inscription jeudi 4 octobre 2007 Statut Membre Dernière intervention 9 octobre 2007 - 9 oct. 2007 à 14:45
Bonsoir,
Je cherche a importer un fichier txt contenant de trés nombreux caractéres speciaux (tous dans la table ASCII).Seulement je n'arrive pas a mettre son contenue dans une textbox.
J'ai essayé ces deux methodes :
'    Dim canal As Integer
'    Dim text As String
'    canal = FreeFile
'    Open File For Input As #canal
'    TxTIn.Text = Input(LOF(canal), #canal)'    If TxTIn.Visible False Then ButtonPlus2.Value True
[Erreur : l'entrée dépasse la fin de fichier]
et
'Open File For Input As #1
'While Not EOF(1)
'Input #1, a$
'TxTIn.Text = TxTIn.Text + a$ + Chr$(13) + Chr$(10)
'Wend
'Close #1'If TxTIn.Visible False Then ButtonPlus2.Value True
[Erreur : mon texte n'est pas importé en entier (moins d'un quart)]

=> ces 2 methodes marchent pourtant a merveille avec des fichiers bien plus gros.
Avez vous un moyen qui me permetterai de réperer mon "texte" ?
Merci d'avance

7 réponses

xav0 Messages postés 20 Date d'inscription samedi 23 septembre 2006 Statut Membre Dernière intervention 10 octobre 2007
24 sept. 2007 à 20:46
S'il y a une erreur 'l'entrée dépasse la fin de fichier', c'est sans doute à cause d'un caractère nul. En plus il n'est de toute façon pas possible de l'afficher dans un textbox, puisque pour windows, le caractère nul signifie "fin du texte".
Par contre, il est possible de récupérer le texte dans une variable string :
  Dim Contenu As String
  Open File For Binary As #1
  Contenu = String(LOF(1), 0)
  Get #1, , Contenu
  Close #1

Avec cette méthode de lecture, les caractères spéciaux ne devraient pas poser de problème.
3
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
24 sept. 2007 à 19:27
La textbox est limitée à 65535 caractères (64ko) si ton texte est de taille suppérieure il faut utiliser la RichTextBox.

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
0
Vianneyp Messages postés 82 Date d'inscription jeudi 6 juillet 2006 Statut Membre Dernière intervention 6 janvier 2010
24 sept. 2007 à 20:29
Merci pour cette information mais ce texte n'excéde pas 3000 caractéres.
Je suis en train de créer une petite appli (pour mon usage peronel) autour d'un code que j'ai trouvé ici (cryptage) et j'aimerai entre autres y ajouter une fonction "importer texte".
L'importaton de fichiers non chiffrés se passe sans problémes mais en ce qui concerne les fichiers chiffrés...
PS : ce n'est pas le "fichier" qui est chiffré mais le texte contenue dans ce fichier (le fichier chiffré reste au format txt).
Je ne sais pas si les caractéres vont passer mais je vait essayer de vous montrer le rendu :
;Í³�1B;åTNÕ³ÑÍa“Ô±ÑÆX‘ؼÑÁX˜Ç°�1D;ÍW—Ùm
(«�1D;^”¾ƒB‘Ç»ÑìP¤Ë±ÑÚcN˜~ë©�1F;h˜†Ý™^œ†~ä¨�1F;g•á©&;p�1E;Úc”Õ¿�1F;³�F;…
Ï»�16;èf¡†¥�2;™B~˜mÙÐXœ´¡Ñ®�1D;^—{ã¯�1F;^Z»ÆBw«‡ÑÂ]¢Ë¿ ÞcN«Å"å^ Ë¿Ñï&\–}Ñ¡&\–}߯�1F;^–{â¯$_˜v¾ƒ1ÕÁÑæ^’ˇÑÇ^ Ó®�1E;†ø;pŸ'ç]
—Ô´ÑéaÉ²%ìT¡ Z»¼)Š½–ÿ½>…¹©�5;òb¢Ëºä«K¡ÓÀ%§T¦ËZ»¼)Š½–ÿ½>…
¹©%òb¢Ëºä«K¥Ï»�1E;èVÔ{�17;ñT;pëÕFw´‘�1;ÐBŠÙÆ%íT›™�E;ìT Ü¶�15;Þb\ËÅ�17;†øq ©   
0
Vianneyp Messages postés 82 Date d'inscription jeudi 6 juillet 2006 Statut Membre Dernière intervention 6 janvier 2010
24 sept. 2007 à 21:04
Merci infiniment ca marche,reste a savoir si je comprendrai pourquoi un jour ^^
Pourquoi cela fonctionne de cette facon ?
Grace a la methode d'accés au fichier (binary) ou au simple fait de l'avoir enregistré dans une chaine avant ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
xav0 Messages postés 20 Date d'inscription samedi 23 septembre 2006 Statut Membre Dernière intervention 10 octobre 2007
24 sept. 2007 à 21:14
C'est le mode d'accès Binary qui permet de lire n'importe quoi. D'ailleurs, je viens de m'en apercevoir, la méthode Input normale marche aussi du moment que le fichier est en mode binaire : Contenu = Input(LOF(1), #1).
Par contre, attention, en mode binaire, l'ouverture d'un fichier qui n'existe pas crée un fichier vide et ne provoque aucune erreur.
0
dannymoh Messages postés 2 Date d'inscription jeudi 4 octobre 2007 Statut Membre Dernière intervention 9 octobre 2007
9 oct. 2007 à 14:38
salut tout le monde



je suis nouveau dans ce forum
et j'ai besoin des codes qui permettent la mise en place du feuille avant l'impression
0
dannymoh Messages postés 2 Date d'inscription jeudi 4 octobre 2007 Statut Membre Dernière intervention 9 octobre 2007
9 oct. 2007 à 14:45
bonjour;

je cherche a telecharger un autoformation en visual basic


qui parmit vous peuvent me donner le nom du site SVP
0
Rejoignez-nous