Newsletter Developpez.com

Inscrivez-vous gratuitement au Club pour recevoir
la newsletter hebdomadaire des développeurs et IT pro

FAQ VB.NETConsultez toutes les FAQ

Nombre d'auteurs : 36, nombre de questions : 239, dernière mise à jour : 24 mai 2015  Ajouter une question

 

Cette FAQ a été réalisée pour répondre aux questions les plus fréquemment posées sur le forum Développement DotNET

Je tiens à souligner que cette FAQ ne garantit en aucun cas que les informations qu'elle contient sont correctes. Les auteurs font le maximum, mais l'erreur est humaine. Si vous trouvez une erreur, ou que vous souhaitez devenir rédacteur, lisez ceci.

Sur ce, je vous souhaite une bonne lecture.


SommaireFichiers (17)
précédent sommaire suivant
 

Pour créer, copier, déplacer ou supprimer un fichier, on utilise la classe System.IO.File

Code vb.net : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
Imports System.IO 
  
Module FileMan 
  
    Sub Main() 
  
        Try 
  
            ' Création d'un fichier vide. 
            FileStream fs = File.Create("myfile.txt") 
            fs.Close() 
            Console.WriteLine("fichier myfile.txt créé") 
  
            ' Copie de fichier 
            File.Copy("myfile.txt", "copyofmyfile.txt") 
            Console.WriteLine("fichier myfile.txt copié vers copyofmyfile.txt") 
  
            ' Déplacement de fichier 
            File.Move("copyofmyfile.txt", "c:\copyofmyfile.txt") 
            Console.WriteLine("fichier copyofmyfile.txt déplacé vers c:\copyofmyfile.txt") 
  
            ' Suppression fichier 
            File.Delete("c:\copyofmyfile.txt") 
            Console.WriteLine("Fichier c:\copyofmyfile.txt supprimé") 
  
        Catch ex As Exception 
  
            Debug.WriteLine(ex.ToString) 
            Console.WriteLine(ex.Message) 
  
        Finally 
  
            ' Fin du programme 
            Console.WriteLine("Tapez sur entrée pour sortir ...") 
            Console.ReadLine() 
  
        End Try 
  
    End Sub 
  
End Module

Mis à jour le 30 novembre 2013 abelman

On utilise la méthode GetAttributes de la classe System.IO.File

Code vb.net : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
Imports System.IO 
  
Sub GetFileAttributes(ByVal sFilename As String) 
  
    Dim flagAttr As FileAttributes = File.GetAttributes(sFilename) 
  
    Console.WriteLine("Créé le {0} à {1}", _ 
    File.GetCreationTime(sFilename).ToShortDateString, _ 
    File.GetCreationTime(sFilename).ToShortTimeString) 
  
    Console.WriteLine("Modifié le {0} à {1}", _ 
    File.GetLastWriteTime(sFilename).ToShortDateString, _ 
    File.GetLastWriteTime(sFilename).ToShortTimeString) 
  
    Console.WriteLine("Dernier accès le {0} à {1}", _ 
    File.GetLastAccessTime(sFilename).ToShortDateString, _ 
    File.GetLastAccessTime(sFilename).ToShortTimeString) 
  
    Console.WriteLine("Attributs du fichier, lecteur ou repertoire {0}", sFilename) 
  
    If (flagAttr And FileAttributes.Archive) = FileAttributes.Archive Then 
        Console.WriteLine(FileAttributes.Archive.ToString) 
    End If 
  
    If (flagAttr And FileAttributes.Compressed) = FileAttributes.Compressed Then 
        Console.WriteLine(FileAttributes.Compressed.ToString) 
    End If 
  
    If (flagAttr And FileAttributes.Device) = FileAttributes.Device Then 
        Console.WriteLine(FileAttributes.Device.ToString) 
    End If 
  
    If (flagAttr And FileAttributes.Directory) = FileAttributes.Directory Then 
        Console.WriteLine(FileAttributes.Directory.ToString) 
    End If 
  
    If (flagAttr And FileAttributes.Encrypted) = FileAttributes.Encrypted Then 
        Console.WriteLine(FileAttributes.Encrypted.ToString) 
    End If 
  
    If (flagAttr And FileAttributes.Hidden) = FileAttributes.Hidden Then 
        Console.WriteLine(FileAttributes.Hidden.ToString) 
    End If 
  
    If (flagAttr And FileAttributes.Normal) = FileAttributes.Normal Then Console.WriteLine(FileAttributes.Normal.ToString) 
  
    If (flagAttr And FileAttributes.NotContentIndexed) = FileAttributes.NotContentIndexed Then 
        Console.WriteLine(FileAttributes.NotContentIndexed.ToString) 
    End If 
  
    If (flagAttr And FileAttributes.Offline) = FileAttributes.Offline Then 
        Console.WriteLine(FileAttributes.Offline.ToString) 
    End If 
  
    'Ne marche pas pour les répertoires apparemment 
    If (flagAttr And FileAttributes.ReadOnly) = FileAttributes.ReadOnly Then 
        Console.WriteLine(FileAttributes.ReadOnly.ToString) 
    End If 
  
    If (flagAttr And FileAttributes.ReparsePoint) = FileAttributes.ReparsePoint Then 
        Console.WriteLine(FileAttributes.ReparsePoint.ToString) 
    End If 
  
    If (flagAttr And FileAttributes.SparseFile) = FileAttributes.SparseFile Then 
        Console.WriteLine(FileAttributes.SparseFile.ToString) 
    End If 
  
    If (flagAttr And FileAttributes.System) = FileAttributes.System Then 
        Console.WriteLine(FileAttributes.System.ToString) 
    End If 
  
    If (flagAttr And FileAttributes.Temporary) = FileAttributes.Temporary Then 
        Console.WriteLine(FileAttributes.Temporary.ToString) 
    End If 
  
End Sub

Mis à jour le 30 novembre 2013 abelman

On utilise la fonction GetFileSystemEntries de la classe System.IO.Directory

Code vb.net : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
Imports System.IO 
Sub Dir(Optional ByVal sDirectory As String = ".") 
    Dim sFiles() As String 
    Dim i As Integer 
    ' Pour avoir les noms des fichiers et des sous-répertoires 
    sFiles = Directory.GetFileSystemEntries(sDirectory) 
    For i = 0 To sFiles.GetUpperBound(0) 
        Console.WriteLine(sFiles(i)) 
    Next 
End Sub

Mis à jour le 30 novembre 2013 abelman

Nous allons ouvrir un fichier texte et le remplir s'il n'existe pas encore.
Nous afficherons ensuite son contenu à l'écran.
On utilise pour cela les classes System.IO.StreamReader pour la lecture et System.IO.StreamWriter pour l'écriture

Code vb.net : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
Imports System.IO 
  
Sub FichierTexte(ByVal NomFichier As String) 
    Dim sr As StreamReader 
    Dim sw As StreamWriter 
    Dim sLine As String 
    Try 
        If Not File.Exists(NomFichier) Then 
            ' Le fichier n'existe pas. On le crée 
            sw = New StreamWriter(NomFichier) 
            sw.WriteLine("Bonjour. Il nous sommes le {0} et il est {1} ", _ 
            DateTime.Now.ToLongDateString, _ 
            DateTime.Now.ToLongTimeString) 
            sw.Close() 
            sw = Nothing 
            ' Remarque : On peut utiliser sw = File.AppendText(NomFichier) pour ajouter 
            ' du texte à un fichier existant 
        End If 
        ' Ouverture du fichier et écriture du contenu du fichier sur la console 
        sr = New StreamReader(NomFichier) 
        Console.WriteLine("Debut du fichier") 
        sLine = sr.ReadLine() 
        While Not sLine Is Nothing 
            Console.WriteLine(sLine) 
            sLine = sr.ReadLine() 
        End While 
        Console.WriteLine("Fin du fichier") 
    Finally 
        ' Fermeture StreamReader 
        If Not IsNothing(sr) Then sr.Close() 
        ' Fermeture StreamWriter 
        If Not IsNothing(sw) Then sw.Close() 
    End Try 
End Sub

Mis à jour le 30 novembre 2013 abelman

Nous allons ouvrir un fichier binaire et le remplir (d'entiers) s'il n'existe pas encore.
Nous afficherons son contenu à l'écran.
On utilise pour cela les classes System.IO.BinaryReader pour la lecture et System.IO.BinaryWriter pour l'écriture.

Code vb.net : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Imports System.IO 
Sub FichierBinaire(ByVal NomFichier As String) 
    Dim br As BinaryReader 
    Dim bw As BinaryWriter 
    Dim fs As FileStream 
    Dim i As Integer 
    Try 
        If Not File.Exists(NomFichier) Then 
            ' Le fichier n'existe pas. On le crée 
            bw = New BinaryWriter(File.Create(NomFichier)) 
            For i = 0 To 9 
                bw.Write(i) 
            Next 
            bw.Close() 
        End If 
        ' Ouverture du fichier et Écriture du contenu du fichier sur la console 
        fs = File.Open(NomFichier, FileMode.Open) 
        br = New BinaryReader(fs) 
        Console.WriteLine("Debut du fichier") 
        While fs.Position < fs.Length 
            Console.Write(br.ReadInt32()) 
        End While 
        Console.WriteLine("{0}Fin du fichier", ControlChars.CrLf) 
    Finally 
        ' Fermeture BinaryReader 
        If Not IsNothing(br) Then br.Close() 
            ' Fermeture BinaryWriter 
        If Not IsNothing(bw) Then bw.Close() 
    End Try 
End Sub

Mis à jour le 30 novembre 2013 abelman

Windows envoie des notifications qui permettent de surveiller les modifications apportées au système de fichiers.
Cela se fait de la manière suivante en utilisant la classe System.IO.FileSystemWatcher.
Le code suivant est à placer dans une classe ou un module utilisé dans un projet Console.

Code vb.net : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
Imports System.IO 
  
Sub Watch(ByVal sPath As String, Optional ByVal sFilter As String = "*") 
    ' On peut utiliser les '*' avec sFilter 
    Dim fw As New FileSystemWatcher(sPath, sFilter) 
    ' On ajoute les handler pour surveiller les évènements qu'on souhaite. 
    AddHandler fw.Changed, AddressOf OnChanged 
    AddHandler fw.Renamed, AddressOf OnRenamed 
    AddHandler fw.Created, AddressOf OnChanged 
    AddHandler fw.Deleted, AddressOf OnChanged 
    AddHandler fw.Error, AddressOf OnError 
    'On surveillera aussi les sous répertoires 
    fw.IncludeSubdirectories = True 
    ' Mettre cette propriété à True démarre la surveillance des modifications. La mettre à false l'arrête. 
    Dans notre exemple, elle sera à true durant tout le programme 
    fw.EnableRaisingEvents = True 
  
End Sub 
  
Sub OnChanged(ByVal source As Object, ByVal e As FileSystemEventArgs) 
    Console.WriteLine("File {0} {1}", e.FullPath, e.ChangeType) 
End Sub 
  
Sub OnRenamed(ByVal source As Object, ByVal e As RenamedEventArgs) 
    Console.WriteLine("File {0} renamed to {1}", e.OldFullPath, e.FullPath) 
End Sub 
  
Sub OnError(ByVal source As Object, ByVal e As ErrorEventArgs) 
    Dim ex As Exception = e.GetException() 
    Debug.WriteLine(ex.ToString()) 
    Console.WriteLine(ex.Message) 
End Sub
Et voici l'utilisation de la fonction Watch

Code vb.net : Sélectionner tout
1
2
3
Watch("c:\monfichier.txt") 
' Ou 
Watch("c:\*.*")

Mis à jour le 30 novembre 2013 abelman

Vous devez utiliser la méthode GetFileName de la classe System.IO.Path qui vous permet de récupérer le nom du fichier.

Code vb.net : Sélectionner tout
1
2
3
Dim fileName As String = "C:\toto.tx" 
Dim name As String = System.IO.Path.GetFileName(fileName) 
Console.WriteLine(name)

Mis à jour le 31 octobre 2013 abelman

Les fichiers sont ouverts avec l'encodage Unicode par défaut dans .NET.
Il en résulte que les caractères accentués par exemple ne s'affichent pas correctement.
Vous devez spécifier le type d'encodage à utiliser, pour la lecture/écriture de votre fichier. Exemple pour la lecture

Code vb.net : Sélectionner tout
1
2
3
4
Imports System.IO 
Imports System.Text 
  
Dim strReader As StreamReader = new System.IO.StreamReader(filePath,Encoding.Default)
Ici, on récupère l'encodage courant et on l'applique lors de l'ouverture du fichier par le StreamReader.
On peut faire exactement la même chose avec les StreamWriter.

Mis à jour le 31 octobre 2013 abelman

Tester si un fichier existe :

Code vb.net : Sélectionner tout
1
2
3
4
5
If System.IO.File.Exists("c:\monFichier.txt") Then 
    ' Le fichier existe 
Else 
    ' Le fichier n'existe pas 
End If

Mis à jour le 31 octobre 2013 neo.51

Pour récupérer l'extension d'un fichier, veuillez procéder de la sorte :

Code vb.net : Sélectionner tout
1
2
3
4
' Path est le chemin complet du fichier 
Private Function GetExtension(ByVal path As String) As String 
    Return New System.IO.FileInfo(path).Extension 
End Function

Mis à jour le 30 novembre 2013 krest

Pour lire un fichier, ligne par ligne, il faut utiliser un StreamReader ainsi qu'une ArrayList. Voici comment procéder :

Code vb.net : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
Imports System.IO 
  
Public Shared Function ReadByLine(ByVal path As String) As ArrayList 
    ' DECLARER un lecteur de fichier 
    Dim monlecteur As StreamReader 
    ' DECLARER une collection pour les lignes du fichier 
    Dim meslignes As New ArrayList 
    Try 
        ' path est le chemin complet du fichier à lire 
        monlecteur = New StreamReader(path) 
        With monlecteur 
            ' POSITIONNER le flux au début du fichier 
            .BaseStream.Seek(0, SeekOrigin.Begin) 
            ' TANT QUE le lecteur a quelque chose à lire 
            While (.Peek > 0) 
                ' LIRE une ligne du fichier et l'ajouter à meslignes 
                meslignes.Add(.ReadLine) 
            End While 
        End With 
    Catch ex As Exception 
        Console.WriteLine(ex.Message) 
    Finally 
        ' FERMER le lecteur en tout état de cause 
        monlecteur.Close() 
    End Try 
    Return meslignes 
End Function

Mis à jour le 31 octobre 2013 neguib

Tout d'abord pensez à ajouter ces deux Imports sans quoi il n'est pas possible d'utiliser le code donné en exemple.

Code vb.net : Sélectionner tout
1
2
Imports System.IO 
Imports System.IO.Compression
Avec cet exemple il vous suffit juste de passer en paramètres le chemin complet du fichier à compresser, et ensuite le chemin de destination du fichier GZip qui va être créé.

Code vb.net : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
Public Function compresserFichier(ByVal cheminSource As String, ByVal cheminDestination As String) As Boolean 
    ' cheminSource : chemin complet du fichier à compresser 
    ' cheminDestination : chemin complet du fichier compressé à créer 
    Try 
        ' Le fichier est placé dans le FileStream 
        Dim monFileStream As New FileStream(cheminSource, FileMode.Open) 
  
        Dim monBuffer(monFileStream.Length) As Byte 
        ' Lecture de l'intégralité du FileStream 
        monFileStream.Read(monBuffer, 0, CInt(monFileStream.Length)) 
        ' Fermeture du FileStream 
        monFileStream.Close() 
        ' Création du fichier qui va contenir le fichier compressé 
        monFileStream = New FileStream(cheminDestination, FileMode.Create) 
        ' Compression des données 
        Dim monGZipStream As New GZipStream(monFileStream, CompressionMode.Compress, False) 
        ' Écriture des données compressées dans le fichier de destination 
        monGZipStream.Write(monBuffer, 0, monBuffer.Length) 
        ' Fermeture du GZipStream 
        monGZipStream.Close() 
        Return True 
    Catch ex As Exception 
        MessageBox.Show(ex.Message) 
        Return False 
    End Try 
End Function

Mis à jour le 30 novembre 2013 Webman

Tout d'abord pensez à ajouter ces deux Imports sans quoi il n'est pas possible d'utiliser le code donné en exemple.

Code vb.net : Sélectionner tout
1
2
Imports System.IO 
Imports System.IO.Compression
Avec cet exemple il vous suffit juste de passer en paramètres le chemin complet du fichier GZip à décompresser, et ensuite le chemin de destination du fichier qui va être décompressé.

Code vb.net : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
Public Function decompression(ByVal cheminSource As String, ByVal cheminDestination As String) As Boolean 
    ' cheminSource : chemin complet du fichier compressé 
    ' cheminDestination : chemin complet du fichier où le fichier doit être décompressé 
  
    Try 
  
        ' Lecture du fichier compresse 
        Dim monFileStream As New FileStream(cheminSource, FileMode.Open) 
        ' Données du fichier placées dans un GZipStream 
        Dim monGzipStream As New GZipStream(monFileStream, CompressionMode.Decompress) 
  
        ' Tableau qui va contenir la taille du fichier 
        Dim tailleOctets(3) As Byte 
  
        ' Positionnement dans le Stream pour récupérer la taille 
        Dim position As Integer = CInt(monFileStream.Length - 4) 
        monFileStream.Position = position 
  
        ' Récupération de la taille du fichier 
        monFileStream.Read(tailleOctets, 0, 4) 
  
        ' Repositionnement en début du Stream 
        monFileStream.Position = 0 
  
        ' Conversion de la taille du fichier en entier 
        Dim tailleFichier As Integer = BitConverter.ToInt32(tailleOctets, 0) 
        ' Dimesionnement du buffer 
        Dim buffer(tailleFichier + 100) As Byte 
        ' Offset qui permettra de se repérer dans le Stream 
        Dim monOffset As Integer = 0 
  
  
        While (True) 
  
            ' Les données sont décompressées et placées dans le buffer 
            Dim decompressionOctets As Integer = monGzipStream.Read(buffer, monOffset, 100) 
  
            ' Tant qu'il reste des données on continue 
            If (decompressionOctets = 0) Then 
                Exit While 
            End If 
  
            ' On icrémente l'offset pour ne pas repartir de 0 à chaque fois... 
            monOffset += decompressionOctets 
  
        End While 
  
        ' Création du fichier décompressé 
        monFileStream = New FileStream(cheminDestination, FileMode.Create) 
        ' Ecriture des données décomrpessées dans le fichier 
        monFileStream.Write(buffer, 0, tailleFichier - 1) 
  
        ' Efface les données en mémoire tampon 
        monFileStream.Flush() 
  
        ' Fermeture des Streams 
        monFileStream.Close() 
        monGzipStream.Close() 
  
        Return True 
  
    Catch ex As Exception 
  
        MessageBox.Show(ex.Message) 
        Return False 
  
    End Try 
  
End Function

Mis à jour le 31 octobre 2013 Webman

On va s'intéresser ici à lecture d'un fichier Xml en se servant non pas de la classe XmlDocument mais des classes de l'espace de nom System.Xml.Xpath. Je distinguerais deux cas, les fichiers Xml basiques et ceux avec un espace de nom.

L'exemple est assez trivial, mais c'est suffisant pour beaucoup de choses.

Premier cas : fichier Xml basique

Code xml : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
<Recordbook> 
    <Records> 
        <Record> 
            <FirstValue>10</FirstValue> 
            <SecondValue>51</SecondValue> 
        </Record> 
        <Record> 
            <FirstValue>25</FirstValue> 
            <SecondValue>38</SecondValue> 
        </Record> 
    </Records> 
</Recordbook>
Code vb.net : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Imports System.Xml.XPath 
  
Private Sub TraiteXml() 
    Dim doc As XPathDocument = New XPathDocument(fileName) 
    Dim nav As XPathNavigator = doc.CreateNavigator 
    ' On récupère un XPathNodeIterator sur les Record 
    Dim iter As XPathNodeIterator = nav.Select("Recordbook/Records/Record") 
    ' Pour chaque Record 
    While iter.MoveNext 
        ' On récupère l'info FirstValue 
        Dim firstValue As String = iter.Current.SelectSingleNode("FirstValue").Value 
        ' On récupère l'info SecondValue 
        Dim secondValue As String = iter.Current.SelectSingleNode("SecondValue").Value 
    End While 
End Sub

Second cas : fichier Xml avec un espace de nom

Code xml : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
<rd:Recordbook xmlns:rd="http://myexemple/myschema/record"> 
    <rd:Records> 
        <rd:Record> 
            <rd:FirstValue>10</rd:FirstValue> 
            <rd:SecondValue>51</rd:SecondValue> 
        </rd:Record> 
        <rd:Record> 
            <rd:FirstValue>25</rd:FirstValue> 
            <rd:SecondValue>38</rd:SecondValue> 
        </rd:Record> 
    </rd:Records> 
</rd:Recordbook>
Code vb.net : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Imports System.Xml.XPath 
  
Private Sub TraiteXml2() 
    Dim doc As XPathDocument = New XPathDocument(fileName) 
    Dim nav As XPathNavigator = doc.CreateNavigator 
    ' On ajoute la gestion des espaces de noms 
    Dim mgr As XmlNamespaceManager = New XmlNamespaceManager(nav.NameTable) 
    mgr.AddNamespace("rd", "http://myexemple/myschema/record") 
    ' On récupère un XPathNodeIterator sur les Record 
    Dim iter As XPathNodeIterator = nav.Select("rd:Recordbook/rd:Records/rd:Record", mgr) 
    ' Pour chaque Record 
    While iter.MoveNext 
        ' On récupère l'info FirstValue 
        Dim firstValue As String = iter.Current.SelectSingleNode("rd:FirstValue", mgr).Value 
        ' On récupère l'info SecondValue 
        Dim secondValue As String = iter.Current.SelectSingleNode("rd:SecondValue", mgr).Value 
    End While 
End Sub

Mis à jour le 31 octobre 2013 StormimOn

Grâce à la classe File, il est possible de récupérer les attributs (Archive, Lecture seule.) d'un fichier :

Code vb.net : Sélectionner tout
1
2
3
4
5
6
7
8
9
' Récupération des attributs d'un fichier 
Dim Fa As FileAttributes = File.GetAttributes("C:\text.txt")  
  
' Vérification si le fichier est en lecture seule 
If (Fa And FileAttributes.ReadOnly) = FileAttributes.ReadOnly Then  
    Console.WriteLine("Ce fichier est en lecture seule !")  
Else  
    Console.WriteLine("Ce fichier n'est pas en lecture seule")  
End If

Mis à jour le 30 novembre 2013 Jérôme Lambert

Renommer un fichier est en fait une opération de déplacement.

Code vb.net : Sélectionner tout
1
2
3
4
5
Dim monAncienFichier As String, monNouveauFichier As String  
  
monAncienFichier = "toto.txt"  
monNouveauFichier = "tata.txt"  
File.Move(monAncienFichier, monNouveauFichier)

Mis à jour le 31 octobre 2013 dev01

La méthode statique ChangeExtension de la classe Path permet de changer l'extension du fichier qui est passé en paramètre. Cependant, le changement n'a d'effet que dans le string, le fichier physique a toujours son extension d'origine.

Code vb.net : Sélectionner tout
1
2
Dim path As String = "C:\Test\test.xml"  
Console.WriteLine("Nouveau path : {0}", System.IO.Path.ChangeExtension(path, "doc"))

Mis à jour le 31 octobre 2013 Jérôme Lambert

Proposer une nouvelle réponse sur la FAQ

Ce n'est pas l'endroit pour poser des questions, allez plutôt sur le forum de la rubrique pour ça


Réponse à la question

Liens sous la question
précédent sommaire suivant
 

Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2017 Developpez Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.

 
Responsable bénévole de la rubrique Microsoft DotNET : Hinault Romaric -