Vider le contenue d'un fichier text avec vb express 2008

Résolu
cs_marwamarwita Messages postés 35 Date d'inscription vendredi 18 juin 2010 Statut Membre Dernière intervention 11 juin 2013 - 1 juin 2013 à 22:21
cs_marwamarwita Messages postés 35 Date d'inscription vendredi 18 juin 2010 Statut Membre Dernière intervention 11 juin 2013 - 2 juin 2013 à 20:15
Bonsoir , je suis débutante en vb express 2008, j'ai créer un bouton qui affiche la liste des PC connecté a un réseau et puis je voulais les ( Ces PCs) enregistrer dans le fichier windows/system32/drivers/etc/hosts mais avant d’enregistrer la nouvelle liste il faut écraser l'ancienne liste : mon code


Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click

 Dim Contenu As String = My.Computer.FileSystem.ReadAllText("C:\WINDOWS\system32\drivers\etc\hosts")
            
            Dim Pos As Integer
            
            My.Computer.FileSystem.WriteAllText("C:\WINDOWS\system32\drivers\etc\hosts", "  ", False)

       
            Dim en As System.Collections.IEnumerator = ListView.Items.GetEnumerator

           
            Pos = 0
            Contenu = Contenu.Insert(Pos, "" + vbCrLf)
            Dim i As Integer
            i = 0
            Try
                Do While listView.Items(i) IsNot Nothing 

                    Pos = Contenu.LastIndexOf(vbCrLf)
                    Contenu = Contenu.Insert(Pos, listView.Items(i).SubItems(0).Text + "    " + listView.Items(i).SubItems(2).Text + vbCrLf) 'Chr(13) + Chr(10))
                    i = i + 1


                Loop
            Catch
            End Try
   End Sub


j'arrive à enregistrer les PC mes j'arrive pas à écraser la liste des PC deja enregister !!!
SVP qui peux m'aider !!! Merci d'avance :)

11 réponses

Utilisateur anonyme
2 juin 2013 à 01:34
Bonjour,

Regarde dans ton aide`; moi, je n'ai pas envie de chercher. Tu dois probablement avoir besoin d'un True à quelque part dans cette ligne pour écraser l'ancien fichier:


My.Computer.FileSystem.WriteAllText("C:\WINDOWS\system32\drivers\etc\hosts", "  ", False
3
cs_marwamarwita Messages postés 35 Date d'inscription vendredi 18 juin 2010 Statut Membre Dernière intervention 11 juin 2013
2 juin 2013 à 13:48
Bonjour ;
mercii bcp
oui j'ai essayé avec cette solution mais ça ne marche pas
0
cs_marwamarwita Messages postés 35 Date d'inscription vendredi 18 juin 2010 Statut Membre Dernière intervention 11 juin 2013
2 juin 2013 à 17:26
en modifiant
My.Computer.FileSystem.WriteAllText("C:\WINDOWS\system32\drivers\etc\hosts", "  ", False)


j'arrive pas à insérer les nouveaux PCs
0
Utilisateur anonyme
2 juin 2013 à 17:57
Bonjour,
Avec un minimum de recherches tu aurais trouvé ça:

System.IO.File.WriteAllText("c:\...", "PC1" & Environment.NewLine & "PC2" & Environment.NewLine)


Ce qui remplace le fichier à chaque fois

Cordialement


CF2i - Guadeloupe
Ingénierie Informatique
0

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

Posez votre question
cs_marwamarwita Messages postés 35 Date d'inscription vendredi 18 juin 2010 Statut Membre Dernière intervention 11 juin 2013
2 juin 2013 à 18:24
Les PCs ne sont pas connues pour moi : dans mon application j'ai une phase (un bouton) apprentissage c a d ,découverte des pcs présentent dans un réseau puis les afficher , après ces pc doivent être enregistrer dans le fichier: windows/system32/drivers/etc/hosts
alors je dois écraser les anciens pcs trouvé pour que je puisse débuter de nouveaux et de découvrir les nouveaux PCs sion il va m'afficher les anciens c a d les hotes déja enregistré dan le fichier hosts
0
Utilisateur anonyme
2 juin 2013 à 18:31
Et alors?...
Ta question est:
"vider le contenue d'un fichier text avec vb express 2008"
"windows/system32/drivers/etc/hosts" : "windows\system32\drivers\etc\hosts"

Ce code fait ce que tu demandes:
System.IO.File.WriteAllText("c:\windows\system32\drivers\etc\hosts", "Ecrit ce" & Environment.NewLine & "que tu veux" & Environment.NewLine)


Cordialement


CF2i - Guadeloupe
Ingénierie Informatique
0
cs_marwamarwita Messages postés 35 Date d'inscription vendredi 18 juin 2010 Statut Membre Dernière intervention 11 juin 2013
2 juin 2013 à 18:44
comment puis je écrire ce que je veux et je ne connais pas la d'avance les Pcs qui vont être afficher
0
cs_marwamarwita Messages postés 35 Date d'inscription vendredi 18 juin 2010 Statut Membre Dernière intervention 11 juin 2013
2 juin 2013 à 18:59
votre code va m'afficher ""Ecrit ce"" et ""tu veux"" et la liste des PCs présentent dans le réseau !!
en faite j'ai pas besoin d’insérer qlq chose j'ai besoin d'écraser la liste anciennement découverte et enregistrer la nouvelle liste
0
Utilisateur anonyme
2 juin 2013 à 19:04
Je recommence...

Ta question est:
"vider le contenue d'un fichier text avec vb express 2008"

Réponse (une parmi d'autres méthodes):
Code Visual Basic :
System.IO.File.WriteAllText("c:\windows\system32\drivers\etc\hosts", "Ecrit ce" & Environment.NewLine & "que tu veux" & Environment.NewLine)

Si tu as une autre question démarre une nouvelle discussion avec ton problème parfaitement isolé.

Cordialement


CF2i - Guadeloupe
Ingénierie Informatique
0
Utilisateur anonyme
2 juin 2013 à 19:09
j'ai besoin d'écraser la liste anciennement découverte et enregistrer la nouvelle liste


File.WriteAllText, méthode:
Crée un nouveau fichier, écrit le contenu dans le fichier, puis ferme le fichier. Si le fichier cible existe déjà, il est remplacé.

Cordialement


CF2i - Guadeloupe
Ingénierie Informatique
0
cs_marwamarwita Messages postés 35 Date d'inscription vendredi 18 juin 2010 Statut Membre Dernière intervention 11 juin 2013
2 juin 2013 à 20:15
ok j'ai posé un autre problème
0
Rejoignez-nous