cs_JeffC1977
Messages postés928Date d'inscriptionvendredi 10 novembre 2000StatutMembreDernière intervention23 septembre 2023
-
6 nov. 2007 à 13:05
Utilisateur anonyme -
6 nov. 2007 à 18:49
Salut à tous....
J'ai fais un Post sur le forum sur ce sujet mais ca devait être un peu trop abstrait...
J'ai un code pour faire une copie d'un fichier...
J'ai un fichier texte Original que je suis capable de lire sans problème, avec un OpenFileDialog.
Je fais une modification de ce fichier et je le copie dana sun fichier porant le même nom que l'original. Bref j'écrase le fichier texte oiriginal et je le remplace par le fichier modifier. Le code fonctionne bien car je vais par l'exploreur voir le fichier modifier et tout est OK. Le fichier texte est transformé.
Le problème est que je suis incapable de lire le nouveau fichier créé.
J'aimerais savoir pourquoi mon fichier modifié Is Nothing ???
Je vous annexe une procédure et deux fonctions.
J'ai mis en gras et souligné la partie ou ca rentre dans la condition ou mon fichier Is Nothing.
Je ne trouve vraiment pas la solution..
Merci de votre aide
<hr />
Function Remplacement_Fichier()
Try
IO.File.Delete(FichierSave)
'Suppression du fichier
IO.File.Copy(AppPathTempo &
"\Tempo.txt", FichierSave,
False)
'Copie du temporaire sur le fichier de
sauvegarde
IO.File.Delete(AppPathTempo &
"\Tempo.txt")
'Suppression du fichier de sauvegarde
Catch ex
As IOException
MsgBox(
"Erreur dans le remplacement du fichier de sauvegarde:" & ex.Message)
End
Try
End
Function
<hr />
Function OuvrirFichier()
Dim OpenFileDialog1
As
New OpenFileDialog()
OpenFileDialog1.InitialDirectory =
"\SD Card\Calcul"
OpenFileDialog1.Filter =
"All files (*.*)|*.*|txt files (*.txt)|*.txt"
OpenFileDialog1.FilterIndex = 2
If OpenFileDialog1.ShowDialog() = DialogResult.OK
Then
Array.Clear(TableauLigne, 0, CompteurLigne) 'Vider Tableau et remet le Compteur à 0 pour recréer un nouveau tableau
Array.Clear(Tableau, 0, Compteur)
CompteurLigne = 0
Compteur = 0
TraitementFichier(OpenFileDialog1.FileName) 'Création du Tableau et Lecture du fichier texte
End
If
End
Function
<hr />Private
Sub TraitementFichier(
ByVal NomDuFichier
As
String)
Dim ObjetFichier
As StreamReader =
New StreamReader(NomDuFichier)
Dim Message
As
StringFichierSave = NomDuFichier
Try
Do
FichierTexte = ObjetFichier.ReadLine()
If Compteur = 0
And FichierTexte
Is
Nothing
Then
<gras>MsgBox("Problème"<gras>)
GoTo Fin
ElseIf FichierTexte =
""
Then
Else
If Compteur = 0
Then
ReDim Tableau(Compteur)
Else
ReDim
Preserve Tableau(Compteur)
End
If
Compteur = Compteur + 1
End
If
Loop
Until FichierTexte
Is
Nothing
ObjetFichier.Close()
Compteur = Compteur - 1
SaveFile = OpenFileDialog1.FileName
Catch exc
As Exception
MsgBox(
"Fichier inexistant")
cs_JeffC1977
Messages postés928Date d'inscriptionvendredi 10 novembre 2000StatutMembreDernière intervention23 septembre 20234 6 nov. 2007 à 13:47
Pour le moment je ne peux pas utiliser le Debug car c'est pour mon PDA. Étant donné que j'utilise le OpenFileDialog, ca fonctionne sur mon PDA mais l'émulateur PDA m'offre pas, à ma connaissance, la possibilité d'ouvrir un fichier sélectionnable....
Bref....
Mais, dans le code, tu ne vois pas un ereur que j'aurais pu faire... Par exemple ma variable FichierTexte = Nothing...
Mais Tout est OK si j'ouvre un fichier non modifié...
Il n'existe pas une facon de, je ne sais pas, de réinitialisé la variable.... enfin quelque chose de ce style ????
Merci de ton aide...
P.S. j'ai envoyé un message sur le forum pour PDA pour l'émulateur.
Si tu ne peux pas débugger avec le débugger, débug avec des simple msgbox.
Dans ta fonction ajoute un messagebox(
NomDuFichier), puis un autre sur ObjetFichier ...
De toute façon, la je peux rein faire de plus.
Oui, c'est l'autre méthode qui peut tout aussi bien marcher.
J'avais oublier de préciser que tu pouvais temporairement supprimer le try ... catch pour qu'il t'affiche bien les éventuels erreurs qu'il rencontre.