Dagry
Messages postés29Date d'inscriptionsamedi 17 mars 2007StatutMembreDernière intervention 1 septembre 2008
-
24 mai 2008 à 19:18
Dagry
Messages postés29Date d'inscriptionsamedi 17 mars 2007StatutMembreDernière intervention 1 septembre 2008
-
29 mai 2008 à 15:37
Bonjour, j'ai un léger problème (que je n'arrive pas à résoudre). J'aimerais pouvoir créer un fichier directement dans un dossier que j'ai spécifié.
C'est à dire que je crée le dossier userpath avec System.Io.Directory.Create dans le répertoire de l'application. Maintenant j'aimerais créer un fichier par exemple username dans ce dossier.
Comment m'y prendre ?
A voir également:
URGENT !! Créer un fichier à l'interieur d'un dossier prédéfini
Bien sur il faut apporter quelques modifications :
Dim path As String = IO.Path.Combine(userpath, "Username.txt")
Dim stream As IO.FileStream = IO.File.Create(path)
Dagry
Messages postés29Date d'inscriptionsamedi 17 mars 2007StatutMembreDernière intervention 1 septembre 2008 25 mai 2008 à 22:36
excusez moi
quand j'utilise l'instruction combine il me dit Le processus ne peut pas accéder au fichier car il est en cours d'utilisation par un autre processus. que faire ?
Dagry
Messages postés29Date d'inscriptionsamedi 17 mars 2007StatutMembreDernière intervention 1 septembre 2008 25 mai 2008 à 22:36
excusez moi
quand j'utilise l'instruction combine il me dit Le processus ne peut pas accéder au fichier car il est en cours d'utilisation par un autre processus. que faire ?
Kevin.Ory
Messages postés840Date d'inscriptionmercredi 22 octobre 2003StatutMembreDernière intervention 7 janvier 200911 27 mai 2008 à 20:31
Lol,
Ce qu'il faut savoir sur l'ouverture des fichiers:
- Un fichier ne peut être ouvert qu'une seule fois. Si on tente de le réouvrire alors qu'il est déjà ouvert, ça provoquera l'erreur que tu as (Le processus ne peut pas accéder au fichier car il est en cours d'utilisation par un autre processus)
- Il faut donc refermer le fichier une fois qu'on a fini d'y écrire des données. On peut le faire manuellement en appelant stream.close, ou ceci est fait automatiquement lorsque stream n'est plus utilisé (lorsque il n'y a plus de référence à l'objet stream). Donc pour être sur que ton fichier est fermé, on va mettre stream.close:
' Chemin du dossier:
Dim dossier As String = IO.Path.Combine(Application.StartupPath, "UserPath")
' Si le dossier n'existe pas, le créer:
If Not IO.Directory.Exists(dossier) Then IO.Directory.CreateDirectory(dossier)
' Création du fichier:
Dim stream As IO.FileStream = IO.File.Create(IO.Path.Combine(dossier, "Username.txt"))
' Ecrire les données dans le fichier
...
' Une fois fini, il faut fermer le fichier
stream.Close()
Mets ces 4 lignes dans un nouveau projet, tu verra que ça fonctionne très bien