Open VBA et TextFieldParser .NET [Résolu]

frederic_bevernage 6 Messages postés mardi 25 juillet 2006Date d'inscription 15 novembre 2014 Dernière intervention - 8 août 2006 à 23:13 - Dernière réponse : Charles Racaud 3181 Messages postés dimanche 15 février 2004Date d'inscription 9 avril 2017 Dernière intervention
- 10 août 2006 à 00:27
Bonsoir,
Je découvre - avec une certaine inquiétude - VB2005....

J'utilise du code VBA dans VB6 pour avoir une macro compilée donc non modifiable et non piratable... tout va bien, il n'y a pas de retouche à faire et le code fonctionne avec Office 2003 et versions antérieures sans problème.
Mais, quand je veux reprendre mon code pour quelque chose d'aussi trivial que " Open nom-de-fichier for input as #n " plus rien ne passe et il semble falloir transformer un simple  :

Dim a as string
Open "C:\testfile.txt"
for input as #1
do while not EOF(1)
  input #1,a
  msgbox (a)
loop
Close 1

en code du style :
Using MyReader AsNew Microsoft.VisualBasic.FileIO.TextFieldParser("C:\testfile.txt")
MyReader.TextFieldType = FileIO.FieldType.Delimited
MyReader.SetDelimiters(",")
Dim currentRow AsString()
WhileNot MyReader.EndOfData
Try
currentRow = MyReader.ReadFields()
Dim currentField AsString
ForEach currentField In currentRow
MsgBox(currentField)
Next
EndTry
EndWhile
End Using

Pourquoi faire simple quand on peut faire compliqué... et bien sûr Bilou ne propose rien pour "transmuter" le code !
Le machin .NET bloque avec 100% de ressource processeur occupée quand on essaye de "Mettre à niveau"...

Si vous avez une idée... Merci d'avance; en attendant je désinstalle tout le fourbi .NET et reviens à VB6 !
Cordialement à tous.
Fred
Afficher la suite 

Votre réponse

9 réponses

Meilleure réponse
mortalino 6812 Messages postés vendredi 16 décembre 2005Date d'inscription 21 décembre 2011 Dernière intervention - 9 août 2006 à 23:20
3
Merci
Salut Kenji,

je vais bientôt vous rejoindre, j'ai acheter le bouquin Visual Basic 2005
(1300 pages, arf, j'ai de quoi faire...)

Mais de ce que j'ai vu, je préfèrerai certainement coder en VB6 !

++

Merci mortalino 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 92 internautes ce mois-ci

Commenter la réponse de mortalino
mortalino 6812 Messages postés vendredi 16 décembre 2005Date d'inscription 21 décembre 2011 Dernière intervention - 9 août 2006 à 19:32
0
Merci
Salut, en .net, ça donne ça :

   
Public
Sub
EcrireFichier(ByVal CheminFichier As
String
, ByVal Texte As
String
)
       
Dim
FreeF As Integer
        FreeF =
FreeFile
() <samp>'Possibilité de mettre 1</samp>
        Texte = Replace(Texte, vbLf, vbCrLf)
        FileOpen(FreeF, CheminFichier, OpenMode.Output)
       
Print
(FreeF, Texte)
        FileClose(FreeF)
   
End
Function


@++

   Mortalino
Le mystérieux chevalier, "Provençal, le Gaulois"
Commenter la réponse de mortalino
frederic_bevernage 6 Messages postés mardi 25 juillet 2006Date d'inscription 15 novembre 2014 Dernière intervention - 9 août 2006 à 22:59
0
Merci
Bonsoir,
Je serai une nana je te ferai   !!!
Merci donc... mais pourquoi tant de chemins pour arriver à Rome...
Cordialement
Frédéric
Commenter la réponse de frederic_bevernage
Charles Racaud 3181 Messages postés dimanche 15 février 2004Date d'inscription 9 avril 2017 Dernière intervention - 9 août 2006 à 23:17
0
Merci
Salut,

En utilisant le Framwork ca donne :



Dim
a
As

String

Dim
Sr
As

New
System.IO.StreamReader(
"C:\testfile.txt"
)

While

Not
Sr.EndOfStream

  a = Sr.ReadLine()

  System.Windows.Forms.MessageBox.Show(a)

End

While

Sr.Close()

Sr.Dispose()

Sr =
Nothing





Kenji



Il était une fois, un pauvre petit règlement que personne ne lisait. Il est tout sympa mais il est triste, aidez-le, lisez-le, ca lui ferait plaisir ainsi qu'a n
Commenter la réponse de Charles Racaud
Charles Racaud 3181 Messages postés dimanche 15 février 2004Date d'inscription 9 avril 2017 Dernière intervention - 9 août 2006 à 23:56
0
Merci
Fait gaffe au .net.
Pour moi, je l'abandonne. (Je continue d'aider mais je ne code plus de vrais programmes)
J'ai appris le vb.net et le C#, mais je m'aperçois que je ne vais pas vers le droit chemin. Le .net c'est bien que si on veut faire du dev pour Windows (surtout pour vista avec le WinFx).
J'ai donc décidé de migré (dés que j'aurais fini mon travail en cours) vers le java qui est un langage plus portable. Et après vers le c++.

Au final, pour ce qui est du vb, moi aussi je préfère le vb6.


<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /??>









Ce n'est que mon avis. Après a toi de voir.
En tout cas bonne lecture et bonne prog.
Perso, j'ai eu un peu de mal au début pour le passage en .net, mais une fois lancer, ca va vite.

Kenji











Il était une fois, un pauvre petit règlement que personne ne lisait. Il est tout sympa mais il est triste, aidez-le, lisez-le, ca lui ferait plaisir ainsi qu'a n
Commenter la réponse de Charles Racaud
mortalino 6812 Messages postés vendredi 16 décembre 2005Date d'inscription 21 décembre 2011 Dernière intervention - 10 août 2006 à 00:07
0
Merci
Ok je te remercie !

T'es pas le seul à me conseiller java.
Une fois bien habitué à VB6 et mon bouquin en .net lu, je vais essayer de m'y mettre (mais chaque chose en son temps... lol)

Merci Kenji ;)

++
Commenter la réponse de mortalino
frederic_bevernage 6 Messages postés mardi 25 juillet 2006Date d'inscription 15 novembre 2014 Dernière intervention - 10 août 2006 à 00:16
0
Merci
Merci à vous deux qui confortez mon impression première.
Vive donc VB6 pour les applications VBA compilées.
Vive SUN pour avoir inventé Java.

Cordialement
Frédéric
Commenter la réponse de frederic_bevernage
frederic_bevernage 6 Messages postés mardi 25 juillet 2006Date d'inscription 15 novembre 2014 Dernière intervention - 10 août 2006 à 00:16
0
Merci
Merci à vous deux qui confortez mon impression première.
Vive donc VB6 pour les applications VBA compilées.
Vive SUN pour avoir inventé Java.

Cordialement
Frédéric
Commenter la réponse de frederic_bevernage
Charles Racaud 3181 Messages postés dimanche 15 février 2004Date d'inscription 9 avril 2017 Dernière intervention - 10 août 2006 à 00:27
0
Merci
Bah, le .net pour moi il a aussi des avantages
Par exemple, quand j'ai besoins un truc quelconque qui prends du temps à faire la main alors qu'un petit prog peut faire ca en quelques secondes. Alors hop, quelques lignes de vb.net avec les fonctions toutes faites du framework. Prog vite fait mal fait en quelques minutes mais qui accompli parfaitement sa tache en quelques secondes. Ca m'évite ainsi de potasser des heurs sur le truc.



Kenji



Il était une fois, un pauvre petit règlement que personne ne lisait. Il est tout sympa mais il est triste, aidez-le, lisez-le, ca lui ferait plaisir ainsi qu'a n
Commenter la réponse de Charles Racaud

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.