begin process at 2010 02 10 03:05:04
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Visual Basic 6

 > 

Divers

 > 

Débutants

 > 

Problème avec l'écriture d'un fichier


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Problème avec l'écriture d'un fichier

jeudi 12 juillet 2007 à 18:31:33 | Problème avec l'écriture d'un fichier

lordfinalff

Voici un bout de mon code ( ne faite pas attention au nom du fichier et au point ^^ )

Private Sub timer_faim_Timer()
   If compte_faim = 1 Then
      If cube_faim5.Visible = True Then
      cube_faim5.Visible = False
      Open App.Path & "/data/gtu86d48.lord" For Output As #2
      Write #2, 100
      Close #2
   end if
   end if
end sub

Mon problème, visual basic ne m'affiche aucune erreur, mais, lorsque je vérifie mon fichier, le nombre 100 n'a pas était écris !
Alors que :

Private Sub command1_click()
      Open App.Path & "/data/gtu86d48.lord" For Output As #2
      Write #2, 100
      Close #2
end sub

la, il écris le nombre 100 dans le fichier !
Pourquoi ?
LORDFINALFF
jeudi 12 juillet 2007 à 19:04:17 | Re : Problème avec l'écriture d'un fichier

jack

Administrateur CodeS-SourceS
Salut
Si ton instruction fonctionne dans le deuxième exemple et pas dans le premier, c'est que les conditions que tu as mis devant ne sont pas vraies.
Teste donc les valeurs de "compte_faim" et si "cube_faim5" est visible
Mode Debug :
Clique sur ta ligne "If compte_faim ..." et appuie sur la touche F9 : Tu viens d'insérer un point d'arrêt.
Quand ton programme passera par là, il s'arrêtera.
Survole avec ta souris les variables et il t'affichera leur contenu.
F8 pour continuer une seule ligne
F5 pour continuer normalement

L'instruction Write # est obsolète. Elle fonctionne mais insère des " en début et fin de chaine.
Mieux vaut utiliser Print # (lignes entières) et Line Input # pour la relecture

Fais aussi attention que / n'est pas \ dans ton chemin, ça peut causer des soucis (rien à voir avec ton problème)

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés
jeudi 12 juillet 2007 à 19:07:48 | Re : Problème avec l'écriture d'un fichier

jmfmarques

Membre Club
Bonsoir,

Je dirais (si mon petit doigt ne me mens pas) que l'interval de ton Timer est resté à 0, ou que a propriété Enabled de ton Timer est à False, ou qu'enfin ton Timer ne s'appelle point Sub timer_faim ...

Mais mon autre petit doit appelle mon attention sur la condition :
 If compte_faim = 1 Then ....

Ce coquin me fait remarquer qu'on ne voit pas dans ton code si compte_fin est quelquepart, défini de telle sorte que sa valeur est égale à 1 ...

Bon ...
L'un de mes 2 petits doigts a probablement raison !
jeudi 12 juillet 2007 à 19:29:28 | Re : Problème avec l'écriture d'un fichier

jmfmarques

Membre Club
Bon,
C'est l'heure du pastis (j'ai le mien à la main) et donc des choes plus sérieuses.
Nous n'allons pas écouter mes petits doigts et poser un regard sage sur les choses ...
Utiliser un timer pour écrire dans un ficheir de façon permanente serait insensé. C'est d'ailleurs la raison pour laquelle tu te sers d'une variable et n'écris que lorsque sa valeur = 1, n'est-ce pas ?

Observation, alors : la valeur de cette variable ne se met pas à 1 à l'insu de ton appli !
Il te suffit donc, en lieu et place du timer, de lancer une procédure et une fonction d'écriture (la même que celle de ton essai avec un bouton de commande) chaque fois que ton appli vois cette variable passer à 1...

Celà serait plus sage; non ?

Bon appétit .
vendredi 13 juillet 2007 à 09:15:00 | Re : Problème avec l'écriture d'un fichier

lordfinalff

Jack, c'est ce que je me suis dit, alors, pour voir si il passé bien par l, j'ai placé un msgbox tout bête apres l'instruction close#2.
L'image disparait bien, le messagebox s'affiche a l'écran, je stop l'application, je vérifie l'interieur du fichier, et rien n'a changé.

J'ai ensuite fait un autre test, j'ai déclaré une variable intnbr, et juste avant d'ouvrir le fichier, j'ai dit que cette variable était égale a 100, ensuite, une fois ceci fait, je lance, j'attend que le cube disparaisse et je vérifie mon fichier. Le nombre 100 a bien était écrit dans le fichier ... c'est pour ca que je sèche :s



 

LORDFINALFF
vendredi 13 juillet 2007 à 09:20:24 | Re : Problème avec l'écriture d'un fichier

lordfinalff

dsl pour le double post !!
Je vais passer pour le pire des débutants mais bon, j'avais une journée de code dans la tête et avec un oeil neuf j'ai vu le problème =D
c'est bon, tout va bien, j'avais juste une instruction a la fin de ma procédure qui réouvré le fichier écriver la varaible a l'interieur, mais comme la variable n'avais pas était modifier, elle reste a 1, donc le 100 est bien écrit, mais il desuite remplacer par le 1 apres.
Mintenant, je place une instruction qui change tout simplement la variable ( la remet a 100 ) et elle est écrit a la fin du fichier ^^

LORDFINALFF


Cette discussion est classée dans : fichier, problème, timer, private, écriture


Répondre à ce message

Sujets en rapport avec ce message

Timer [ par tony ] Private Sub form_load()timer.Interval = 1000timer.Enabled = trueEnd SubPrivate Timer_Time()Label1.caption = timeEnd Sub'Malheureusement avec cette mét problème de fichier s longs [ par touil ] Mon programme de lecture des fichiers MP3 ne lit pas les fichiers MP3 dont les noms sont longs. par exemple je peux pas lire le fichier "xxxxxxxxxxxxx Problème Empaquetage [ par Beren ] Bonjour à tous et merci de vous pencher sur mes petits problèmes.L'empaquetage de mon application génère un fichier Setup.Lst. Dans la section [Bootst Problème avec le fichier SETUP1.EXE [ par luc91 ] bonjour,lors de l'install d'un soft développé en VB6, j'ai le message "le fichier c:\windows\setup1.exe semble endommagé.Réinstallez le puis essayez d Aide en VB macro !! [ par Cédric ] Bonjour!!Voila mon problème:j'ai fait une boite de dialogue ouvrir/fichier et j'aimerais bien pouvoir utiliser une macro précise avec n'importe quel f A l'aide!! Gros problème pour copier un fichier URGENT [ par Neric ] Voilà mon problème:J'ai mon fichier excel de base avec toutes mes feuilles ecxel, mes modules, mes userForm, ...Mon programme extrait des données d'un Urgent : lecture et écriture dans fichiers text [ par jl ] Problème :- j'ai un fichier A qui contient des références : 345 987 587 345 345 987 100 etc- je veux lire le fichier A et créer un fic forcer l'écriture d'un fichier séquentiel [ par isaca ] Comment faire pour forcer l'écriture d'un fichier séquentiel?Voici ma syntaxe : MyFile = LogFilePath & LogFileNameRadical & DateDuJour & ".txt" Aidez moi SVP !!! [ par Etienne ] J'ai utilisé ce code pour charger de Forms mais j'aimerais savoir comment faire pour que lorsque l'on charge les feuilles au démarrage de l'applicatio Problème avec un MsgBox? [ par m.bazier ] Suite à une macro qui créer un nouveau fichier sur excel, je remplace un fichier existant; Tout le programme fonctionne bien jusqu'au moment ou un Msg


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,780 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales