IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Gestion des E/S sur Fichier

Par Neguib
 

   Nouveautés apportées par le Framework 2.0 notamment sur l'espace de noms System.IO :
Version VB.Net

Niveau Débutant Avancé
UsageGeneral
Niveau Avancé Confirmé
Securite

I. Prérequis:
II. Présentation:
III. Usage Général :
III-A. Particularités Visual Basic :
III-A-1. Class FileSystem
III-A-1-01. Propriété FileSystem.CurrentDirectory
III-A-1-02. Propriété FileSystem.Drives
III-A-1-03. Fonction FileSystem.CombinePath
III-A-1-04. Procedure FileSystem.CopyDirectory
III-A-1-05. Procedure FileSystem.CopyFile
III-A-1-06. Procedure FileSystem.CreateDirectory
III-A-1-07. Procedure FileSystem.DeleteDirectory
III-A-1-08. Procedure FileSystem.DeleteFile
III-A-1-09. Fonction FileSystem.DirectoryExists
III-A-1-10. Fonction FileSystem.FileExists
III-A-1-11. Fonction FileSystem.FindInFiles
III-A-1-12. Fonction FileSystem.GetDirectories
III-A-1-13. Fonction FileSystem.GetDirectoryInfo
III-A-1-14. Fonction FileSystem.GetDriveInfo
III-A-1-15. Fonction FileSystem.GetFileInfo
III-A-1-16. Fonction FileSystem.GetFiles
III-A-1-17. Fonction FileSystem.GetName
III-A-1-18. Fonction FileSystem.GetParentPath
III-A-1-19. Fonction FileSystem.GetTempFileName
III-A-1-20. Procedure FileSystem.MoveDirectory
III-A-1-21. Procedure FileSystem.MoveFile
III-A-1-22. Fonction FileSystem.OpenTextFieldParser
III-A-1-23. Fonction FileSystem.OpenTextFileReader
III-A-1-24. Fonction FileSystem.OpenTextFileWriter
III-A-1-25. Fonction FileSystem.ReadAllBytes
III-A-1-26. Fonction FileSystem.ReadAllText
III-A-1-27. Procedure FileSystem.RenameDirectory
III-A-1-28. Procedure FileSystem.RenameFile
III-A-1-29. Procedure FileSystem.WriteAllBytes
III-A-1-30. Procedure FileSystem.WriteAllText
Exemple Console. FileSystemFullSample
III-A-2. Class MalformedLineException
III-A-3. Class SpecialDirectories
III-A-4. Class TextFieldParser
III-A-5. Enum DeleteDirectoryOption
III-A-6. Enum FieldType
III-A-7. Enum RecycleOption
III-A-8. Enum SearchOption
III-A-9. Enum UICancelOption
III-A-9. Enum UIOption
III-B. Nouvelles Classes :
III-B-1. DriveInfo
III-B-2. DeflateStream
III-B-3. GzipStream
III-B-4. SerialPort
III-C. Modifications :
III-C-1. Enumération FileOptions
III-C-2. Mode Asynchrone
IV. Sécurité :
IV-A. Gestion par programmation des Access Control Lists
V. Liens Complémentaires:


I. Prérequis:

retour au Sommaire
Pour votre commodité, il est preferable, avant d'aborder ce document, que vous soyez familier de la version 1.0 ou 1.1 de l'espace de noms System.IO.

Pour tester les codes-exemples décrits ici, vous devez avoir installé le Framework 2.0 ainsi qu'un logiciel de developpement tel que Microsoft Visual Basic 2005.

Tous les codes présentés sont implémentés à l'origine dans le cadre d'une application Console.


II. Présentation:

retour au Sommaire
Ce document tente de décrire l'ensemble des nouveautés qu'apporte le Framework 2.0 sur la gestion des Entrées/Sorties sur fichier, de la façon la plus exhaustive possible.

Chaque paragraphe est illustré par un exemple simple de code en VB.Net.


info Afin d'améliorer votre confort de navigation dans ce long document, vous disposez de 2 types de renvois:
* Celui qui se signale par la coloration du mot clé comme ceci : Lien
* Celui qui se signale par une image accompagnée d'une infobulle comme ceci : retour ...

Pour une consultation plus complète de la version 2.0 concernant System.IO, reportez-vous à la documentation MSDN liée à cet article.


III. Usage Général :

retour au Sommaire
niveau-debutant-avance
Niveau

Ce chapitre se décline de façon nuancée selon le langage utilisé. Son contenu concerne les usages d'implémentations du système de fichiers. Ici en VB.Net, il détaille dans un premier temps ce que propose le Framework 2.0 spécifiquement à ce langage, pour ensuite décrire les apports communs à tous les langages utilisables.

  1. Particularités Visual Basic
  2. Nouvelles Classes
  3. Modifications

III-A. Particularités Visual Basic :

retour III. Usage Général
Les utilisateurs de Visual Basic ont toujours accès à FileSystem Object. Il est maintenant directement accessible par la classe My.Computer.FileSystem.

Cet objet est implementable par le biais du nouvel espace de noms Microsoft.VisualBasic.FileIO.

Voici la liste des types utilisables dans cet espace de noms :


III-A-1. Class FileSystem

retour III-A. Particularités Visual Basic
Classe qui fournit propriétés et méthodes pour gérer lecteurs, répertoires et fichiers.

Ce sous-chapitre vous détaille, tous les membres Shared et omet les méthodes d'instance héritées de System.Object.

info La description est constituée de :
 * La signature du membre
 * La definition du membre
 * Les surcharges éventuelles du membre
 * Les remarques eventuelles
 * Un petit code exemplaire qui met systématiquement en évidence la gestion des exceptions spécifiques à ce membre



III-A-1-01. Propriété FileSystem.CurrentDirectory

Shared Property CurrentDirectory As String
Obtient ou définit le repertoire courant

warning CurrentDirectory est une variable d'environnement système
CurrentDirectorySample
Option Explicit On
Option Strict On

Imports Microsoft.VisualBasic.FileIO
Imports System
Imports System.IO

'...
Private Shared Sub CurrentDirectorySample()

   Dim currentDir As String
   Dim testDir As String = "C:\DirForTest"

   Console.WriteLine("Le répertoire courant est : ")
   Try
         'OBTENIR le repertoire courant
         currentDir = My.Computer.FileSystem.CurrentDirectory
         Console.WriteLine(currentDir)
	
         'SI le répertoire courant est différent de testDir
         If Not (currentDir = testDir) Then
                  Console.WriteLine("Le répertoire courant est différent du repertoire test '" + testDir + "'")
                  'ALORS modifier le répertoire courant
                  My.Computer.FileSystem.CurrentDirectory = testDir
                  Console.WriteLine("la modification du répertoire courant a réussi.")
         
         'SINON ne rien faire
         Else : Console.WriteLine("Le répertoire courant est identique au repertoire test, " + _
			"aucune modification de répertoire courant effectuée.")
         End If
    
   'Dans le cas du nouveau répertoire non trouvé
   Catch ex As DirectoryNotFoundException
         Console.WriteLine("CurrentDirectory a échoué car le répertoire '" + testDir + "' n'a pas été trouvé.")
    
   'Dans le cas d'un défaut d'autorisation d'accès
   Catch ex As UnauthorizedAccessException
         Console.WriteLine("CurrentDirectory a échoué car l'utilisateur n'a pas les droits nécessaires.")
    
   'Dans tous les autres cas d'exception
   Catch ex As Exception
         Console.WriteLine("CurrentDirectory a échoué car :")
         Console.WriteLine(ex.ToString())
   End Try
   Console.Read()
End Sub
retour Class FileSystem

III-A-1-02. Propriété FileSystem.Drives

Shared ReadOnly Property Drives As ReadOnlyCollection(Of DriveInfo)
Obtient la collection DriveInfo des lecteurs disponibles

warning Cette propriété renvoie toutes les commandes logiques et ne lève par elle-même aucune exception.
Attention donc à celles levées par la manipulation de DriveInfo
DrivesSample
							
Option Explicit On
Option Strict On

Imports Microsoft.VisualBasic.FileIO
Imports System
Imports System.Collections.ObjectModel
Imports System.IO

'...
Private Shared Sub DrivesSamples()	
					
   Dim indent As Integer = 3
   Dim drivesInfos As ReadOnlyCollection(Of DriveInfo)
  
   'OBTENIR la collection des lecteurs
   drivesInfos = My.Computer.FileSystem.Drives
   Console.WriteLine("Vous disposez des " + drivesInfos.Count.ToString() + " lecteur(s) suivant(s) :")
		 
   'POUR CHAQUE lecteur dans la collection drivesInfos
   For Each driveI As DriveInfo In drivesInfos
         'ECRIRE le nom du lecteur
         Console.WriteLine(Space(indent) + driveI.Name)
         'ECRIRE le type du lecteur
         Console.WriteLine(Space(indent + 1) + "Type : " + driveI.DriveType.ToString())
         'ECRIRE si le lecteur est prêt
         Console.WriteLine(Space(indent + 1) + "IsReady : " + driveI.IsReady.ToString())
	
         'SI le lecteur est prêt ALORS
         If driveI.IsReady Then
                  'ECRIRE l'étiquette du volume
                  Console.WriteLine(Space(2 * indent) + "VolumeLabel : " + driveI.VolumeLabel)
                  'ECRIRE le format du lecteur
                  Console.WriteLine(Space(2 * indent) + "DriveFormat : " + driveI.DriveFormat)
                  'ECRIRE la taille totale du lecteur
                  Console.WriteLine(Space(2 * indent) + "TotalSize : " + driveI.TotalSize.ToString() + " Octets")
                  'ECRIRE la taille de l'espace libre du lecteur
                  Console.WriteLine(Space(2 * indent) + "TotalFreeSpace : " + driveI.TotalFreeSpace.ToString() +" Octets")
         End If
    
   Next
   Console.Read()
End Sub
retour Class FileSystem

III-A-1-03. Fonction FileSystem.CombinePath

Shared Function CombinePath(basePath As String, relativePath As String) As String
Compose et retourne un chemin correctement formé à l'aide de 2 chemins partiels

warning Cette méthode ôte les caractères slash-mark en excès pour créer un chemin correctement composé. Un ArgumentException sera levée si les chaines de caractères spécifiées entrainent la création d'un chemin malformé
CombinePathSample
							
Option Explicit On
Option Strict On

Imports Microsoft.VisualBasic.FileIO
Imports System

'...
Private Shared Sub CombinePathSample()
					
   Dim basePath As String = String.Empty
   Dim relativePath As String = "imageTest.gif"

   Console.WriteLine("BasePath :")
   Try
 
         'OBTENIR le repertoire spécial 'Mes Images'
         basePath = My.Computer.FileSystem.SpecialDirectories.MyPictures
         Console.WriteLine(Space(3) + basePath)
         Console.WriteLine("RelativePath :")
         Console.WriteLine(Space(3) + relativePath)
         Console.WriteLine("La Combinaison :")
         'COMBINER basePath avec relativePath
         Console.WriteLine(My.Computer.FileSystem.CombinePath(basePath, relativePath))
	
   ' Dans le cas d'un chemin malformé
   Catch ex As ArgumentException
         Console.WriteLine("CombinePath a échoué car '" + basePath + "' + '" + relativePath + _
		"' entraine la contruction d'un chemin malformé.")
         Console.WriteLine(ex.ToString())
    
   ' Dans tous les autres cas d'exception
   Catch ex As Exception
         Console.WriteLine("CombinePath a échoué car :")
         Console.WriteLine(ex.ToString())
   End Try
   Console.Read()
End Sub
retour Class FileSystem

III-A-1-04. Procedure FileSystem.CopyDirectory

Shared Sub CopyDirectory(...)
Copie le répertoire spécifié vers un autre repertoire. Il existe 4 surcharges differentes à cette procedure :
Shared Sub CopyDirectory(fromDirPath As String, toDirPath As String)
Shared Sub CopyDirectory(fromDirPath As String, toDirPath As String, overwrite As Boolean)
Shared Sub CopyDirectory(fromDirPath As String, toDirPath As String, opt As UIOption)
Shared Sub CopyDirectory(fromDirPath As String, toDirPath As String, opt As UIOption, onCancel As UICancelOption)
warning Cette méthode copie le contenu du répertoire aussi bien que le répertoire lui-même. Si le répertoire cible n'existe pas, il est créé. Si le répertoire cible existe, les contenus des deux répertoires sont fusionnées à la condition que le paramètre overwrite ait la valeur True (la valeur par défaut est False). Vous pouvez indiquer un nouveau nom pour le répertoire à copier.
Les paramètres UIOption et UICancelOption permettent de proposer à l'utilisateur les boîtes de dialogues necessaires pour suivre et gérer la progression de l'opération. Attention, ces derniers paramètres ne sont pas supportés par une application n'ayant pas d'interface utilisateur, telle qu'un Service Windows.
CopyDirectorySample
							
Option Explicit On
Option Strict On

Imports Microsoft.VisualBasic.FileIO
Imports System
Imports System.IO
Imports System.Security

'...
Private Shared Sub CopyDirectorySample()
						
   Dim fromDirPath As String = "C:\DirForTest"
   Dim toDirPath As String = "C:\Copy\DirForTest"

   Console.WriteLine("Le répertoire source : '" + fromDirPath + "'sera copié au chemin suivant : '" + toDirPath + "'.")
   Console.WriteLine("CopyDirectory en cours...")
 
   Try
         'EXECUTER la copie du repertoire
         My.Computer.FileSystem.CopyDirectory(fromDirPath, toDirPath)
         Console.WriteLine("CopyDirectory terminé avec succès.")

   'Dans le cas du répertoire source non trouvé
   Catch ex As DirectoryNotFoundException
         Console.WriteLine("CopyDirectory a échoué car le répertoire '" + fromDirPath + "' n'a pas été trouvé.")

   'Dans le cas d'une longueur du chemin spécifié excèdant le maximum authorisé.
   Catch ex As PathTooLongException
         Console.WriteLine("CopyDirectory a échoué car la longueur du chemin spécifié(" + toDirPath.Length.ToString() + _
		") excède le maximum authorisé(248).")

   Catch ex As IOException
         Console.WriteLine("CopyDirectory a échoué car :")

         'Dans le cas d'un répertoire racine indiqué comme repertoire à copier
         If My.Computer.FileSystem.GetDriveInfo(fromDirPath).Name = fromDirPath Then
                  Console.WriteLine("le repertoire source : '" + fromDirPath + "' désigne un répertoire racine.")

         'Dans le cas où les répertoires source et destinataire sont identiques
         ElseIf fromDirPath = toDirPath Then
                  Console.WriteLine("le repertoire source '" + fromDirPath + "' et le repertoire destinataire :'" + toDirPath + _
			"' sont identiques")

         'Dans le cas d'un répertoire destinataire déjà existant
         ElseIf My.Computer.FileSystem.DirectoryExists(toDirPath) Then
                  Console.WriteLine(toDirPath + " existe déjà. Le paramètre 'overwrite' de CopyDirectory est à False")

         'Dans tous les autres cas d'une IOException
         Else : Console.WriteLine(ex.ToString())
         End If

   'Dans le cas d'un problème de sécurité
   Catch ex As SecurityException
         Console.WriteLine("CopyDirectory a échoué car l'utilisateur n'a pas les droits nécessaires sur : '" + _
			fromDirPath + "' .")

   'Dans le cas d'un défaut d'autorisation d'accès
   Catch ex As UnauthorizedAccessException
         Console.WriteLine("CopyDirectory a échoué car l'utilisateur n'a pas les droits d'accès nécessaires.")

   'Dans tous les autres cas d'exception
   Catch ex As Exception
         Console.WriteLine("CopyDirectory a échoué car :")
         Console.WriteLine(ex.ToString())
   End Try
   Console.Read()
End Sub
retour Class FileSystem

III-A-1-05. Procedure FileSystem.CopyFile

Shared Sub CopyFile(...)
Copie le fichier spécifié vers le chemin spécifié. Il existe 4 surcharges differentes à cette procedure :
Shared Sub CopyFile(fromFullPath As String, toFilePath As String)
Shared Sub CopyFile(fromFullPath As String, toFilePath As String, overwrite As Boolean)
Shared Sub CopyFile(fromFullPath As String, toFilePath As String, opt As UIOption)
Shared Sub CopyFile(fromFullPath As String, toFilePath As String, opt As UIOption, onCancel As UICancelOption)
warning Attention la méthode CopyFile ne préserve pas les propriétés de contrôle d'accès (ACEs). Le fichier créé hérite par défaut des propriétés du répertoire dans lequel il est créé. Le paramètre overwrite a par défaut la valeur False. Vous pouvez indiquer un nouveau nom pour le fichier à copier.
Les paramètres UIOption et UICancelOption permettent de proposer à l'utilisateur les boîtes de dialogues necessaires pour suivre et gérer la progression de l'opération. Attention, ces derniers paramètres ne sont pas supportés par une application n'ayant pas d'interface utilisateur, telle qu'un Service Windows.
CopyFileSample
							
Option Explicit On
Option Strict On

Imports Microsoft.VisualBasic.FileIO
Imports System
Imports System.IO
Imports System.Security

'...
Private Shared Sub CopyFileSample()

   Dim fromFullPath As String = "C:\DirForTest\test1.txt"
   Dim toFilePath As String = "C:\Copy\DirForTest\newTest1.txt"

   Console.WriteLine("Le fichier : '" + fromFullPath + "'sera copié dans le repertoire suivant : '" + toFilePath + "'.")
   Console.WriteLine("CopyFile en cours...")
 
   Try
         'EXECUTER la copie du fichier
         My.Computer.FileSystem.CopyFile(fromFullPath, toFilePath)
         Console.WriteLine("CopyFile terminé avec succès.")

   'Dans le cas du fichier source non trouvé
   Catch ex As FileNotFoundException
         Console.WriteLine("CopyFile a échoué car le fichier '" + fromFullPath + "' n'a pas été trouvé.")

   'Dans le cas d'une longueur du chemin spécifié excèdant le maximum authorisé.
   Catch ex As PathTooLongException
         Console.WriteLine("CopyFile a échoué car la longueur du chemin spécifié(" + toFilePath.Length.ToString() + _
		") excède le maximum authorisé(248).")

   'Dans le cas d'un problème de sécurité
   Catch ex As SecurityException
         Console.WriteLine("CopyDirectory a échoué car l'utilisateur n'a pas les droits nécessaires sur : '" + _
		fromFullPath + "' ou " + My.Computer.FileSystem.GetParentPath(toFilePath) + "' .")

   'Dans le cas d'un défaut d'autorisation d'accès
   Catch ex As UnauthorizedAccessException
         Console.WriteLine("CopyDirectory a échoué car l'utilisateur n'a pas les droits d'accès nécessaires.")

   Catch ex As IOException
         Console.WriteLine("CopyFile a échoué car :")

         'Dans le cas d'un repertoire cible en service
         If My.Computer.FileSystem.DirectoryExists(toFilePath) Then
                  Console.WriteLine("Un dossier dans le repertoire cible avec le même nom '" + toFilePath + _
			"' est déjà en service.")

         'Dans le cas où les chemins source et destinataire sont identiques
         ElseIf fromFullPath = toFilePath Then
                  Console.WriteLine("le chemin source '" + fromFullPath + "' et le chemin destinataire :'" + toFilePath + _
			"' sont identiques")

         'Dans le cas d'un fichier destinataire déjà existant
         ElseIf My.Computer.FileSystem.FileExists(toFilePath) Then
                  Console.WriteLine(toFilePath + " existe déjà. Le paramètre 'overwrite' de CopyFile est à False")

         'Dans tous les autres cas d'une IOException
         Else : Console.WriteLine(ex.ToString())
         End If

   'Dans tous les autres cas d'exception
   Catch ex As Exception
         Console.WriteLine("CopyDirectory a échoué car ")
         Console.WriteLine(ex.ToString())
   End Try
   Console.Read()
End Sub
retour Class FileSystem

III-A-1-06. Procedure FileSystem.CreateDirectory

Shared Sub CreateDirectory(dirPath As String)
Crée le répertoire spécifié

warning Si le repertoire spécifié existe déjà, aucune exception ne sera levée.
Attention, si par inadvertance vous indiquez un chemin de fichier au lieu de celui d'un repertoire, aucune exception ne sera levée, votre repertoire sera donc nommé par exemple 'fichier.txt'   confus.
CreateDirectorySample
							
Option Explicit On
Option Strict On

Imports Microsoft.VisualBasic.FileIO
Imports System
Imports System.IO
Imports System.Security

'...
Private Shared Sub CreateDirectorySample()

   Dim dirPath As String = "C:\DirForTest\NewDirectory"

   Console.WriteLine("Le répertoire qui sera créé est: '" + dirPath + "' .")
   Console.WriteLine("CreateDirectory en cours...")
 
   Try
      'EXECUTER la création du repertoire
      My.Computer.FileSystem.CreateDirectory(dirPath)
      Console.WriteLine("CreateDirectory terminé avec succès.")

   'Dans le cas d'un chemin de repertoire Nothing.
   Catch ex As ArgumentNullException
      Console.WriteLine("CreateDirectory a échoué car le chemin de répertoire est vide.")

   'Dans le cas d'un chemin de repertoire invalide.
   Catch ex As NotSupportedException
      Console.WriteLine("CreateDirectory a échoué car le chemin de répertoire '" + dirPath + "' n'est pas valide.")
      Console.WriteLine(ex.ToString())

   'Dans le cas d'une longueur du chemin spécifié excèdant le maximum authorisé.
   Catch ex As PathTooLongException
      Console.WriteLine("CreateDirectory a échoué car la longueur du chemin spécifié(" + dirPath.Length.ToString() + _
		") excède le maximum authorisé(248).")

   'Dans le cas d'un répertoire parent en lecture seule
   Catch ex As IOException
         Console.WriteLine(CreateDirectory a échoué car le répertoire parent '" + _
		My.Computer.FileSystem.GetParentPath(dirPath) + "' est en lecture seule")

   'Dans le cas d'un problème de sécurité
   Catch ex As SecurityException
         Console.WriteLine("CreateDirectory a échoué car l'utilisateur n'a pas les droits nécessaires sur : '" + _
		My.Computer.FileSystem.GetParentPath(dirPath) + "' .")

   'Dans le cas d'un défaut d'autorisation d'accès
   Catch ex As UnauthorizedAccessException
         Console.WriteLine("CreateDirectory a échoué car l'utilisateur n'a pas les droits d'accès nécessaires.")

   'Dans tous les autres cas d'exception
   Catch ex As Exception
         Console.WriteLine("CopyDirectory a échoué car :")
         Console.WriteLine(ex.ToString())
   End Try
   Console.Read()
End Sub
retour Class FileSystem

III-A-1-07. Procedure FileSystem.DeleteDirectory

Shared Sub DeleteDirectory(...)
Supprime le répertoire spécifié. Il existe 3 surcharges differentes à cette procedure :
Shared Sub DeleteDirectory(dirPath As String, onDirNotEmpty As DeleteDirectoryOption)
Shared Sub DeleteDirectory(dirPath As String, opt As UIOption, recycle As RecycleOption)
Shared Sub DeleteDirectory(dirPath As String, opt As UIOption, recycle As RecycleOption, _
			onCancel As UICancelOption)
warning Le paramètre DeleteDirectoryOption : onDirNotEmpty indique ce qui doit être fait quand le répertoire à supprimé n'est pas vide (la valeur par défaut est DeleteAllContents). La seule autre possibilité proposée par DeleteDirectoryOption est de lever une IOException. Les paramètres UIOption et UICancelOption permettent de proposer à l'utilisateur les boîtes de dialogues necessaires pour suivre et gérer la progression de l'opération.
Le paramètre RecycleOption : recycle indique si le dossier supprimé doit être envoyé à la corbeille ou directement effacer ( la valeur par défaut est DeletePermanently).
Les paramètres UIOption, UICancelOption, RecycleOption ne sont pas supportés pour une application n'ayant pas d'interface utilisateur, telle qu'un Service Windows.
DeleteDirectorySample
							
Option Explicit On
Option Strict On

Imports Microsoft.VisualBasic.FileIO
Imports System
Imports System.IO
Imports System.Security

'...
Private Shared Sub DeleteDirectorySample()

   Dim dirPath As String = "C:\DirForTest\NewDirectory"

   Console.WriteLine("Le répertoire : '" + dirPath + "' sera supprimé.")
   Console.WriteLine("DeleteDirectory en cours...")
 
   Try
         'EXECUTER la suppression du repertoire
         My.Computer.FileSystem.DeleteDirectory(dirPath, DeleteDirectoryOption.ThrowIfDirectoryNonEmpty)
         Console.WriteLine("DeleteDirectory terminé avec succès.")

   'Dans le cas d'un chemin de repertoire Nothing.
   Catch ex As ArgumentNullException
         Console.WriteLine("DeleteDirectory a échoué car le chemin de répertoire est vide.")

   'Dans le cas du répertoire non trouvé.
   Catch ex As DirectoryNotFoundException
         Console.WriteLine("DeleteDirectory a échoué car :")
         If My.Computer.FileSystem.FileExists(dirPath) Then
                  Console.WriteLine("le chemin '" + dirPath + "' concerne un fichier.")
         Else : Console.WriteLine("le répertoire '" + dirPath + "' n'a pas été trouvé.")
         End If
     
   'Dans le cas d'un chemin de repertoire invalide.
   Catch ex As NotSupportedException
         Console.WriteLine("DeleteDirectory a échoué car le chemin de répertoire '" + dirPath + "' n'est pas valide.")
         Console.WriteLine(ex.ToString())

   'Dans le cas d'une longueur du chemin spécifié excèdant le maximum authorisé.
   Catch ex As PathTooLongException
         Console.WriteLine("DeleteDirectory a échoué car la longueur du chemin spécifié(" + dirPath.Length.ToString() + _
		") excède le maximum authorisé(248).")

   'Dans le cas d'un répertoire non vide
   Catch ex As IOException
         Console.WriteLine(DeleteDirectory a échoué car le répertoire '" + dirPath + _
		"' n'est pas vide et le paramètre 'onDirectoryNotEmpty' est 'ThrowIfDirectoryNonEmpty'")

   'Dans le cas d'un problème de sécurité
   Catch ex As SecurityException
         Console.WriteLine("DeleteDirectory a échoué car l'utilisateur n'a pas les droits nécessaires sur : '" + _
		dirPath + "' .")

   'Dans tous les autres cas d'exception
   Catch ex As Exception
         Console.WriteLine("DeleteDirectory a échoué car :")
         Console.WriteLine(ex.ToString())
   End Try
   Console.Read()
End Sub
retour Class FileSystem

III-A-1-08. Procedure FileSystem.DeleteFile

Shared Sub DeleteFile(...)
Supprime le fichier spécifié. Il existe 3 surcharges differentes à cette procedure :
Shared Sub DeleteFile(filePath As String)
Shared Sub DeleteFile(filePath As String, opt As UIOption, recycle As RecycleOption)
Shared Sub DeleteFile(filePath As String, opt As UIOption, recycle As RecycleOption, onCancel As UICancelOption)
warning Les paramètres UIOption et UICancelOption permettent de proposer à l'utilisateur des boîtes de dialogues afin de suivre et gérer la progression de l'opération.
Le paramètre RecycleOption : recycle indique si le fichier supprimé doit être envoyé à la corbeille ou directement effacer ( la valeur par défaut est DeletePermanently).
Les paramètres UIOption, UICancelOption, RecycleOption ne sont pas supportés pour une application n'ayant pas d'interface utilisateur, telle qu'un Service Windows.
DeleteFileSample
							
Option Explicit On
Option Strict On

Imports Microsoft.VisualBasic.FileIO
Imports System
Imports System.IO
Imports System.Security

'...
Private Shared Sub DeleteFileSample()

   Dim filePath As String = "C:\DirForTest\test1.txt"

   Console.WriteLine("Le fichier : '" + filePath + "' sera supprimé.")
   Console.WriteLine("DeleteFile en cours...")
 
   Try
         'EXECUTER la suppression du fichier
         My.Computer.FileSystem.DeleteFile(filePath)
         Console.WriteLine("DeleteFile terminé avec succès.")

   'Dans le cas d'un chemin de fichier Nothing.
   Catch ex As ArgumentNullException
         Console.WriteLine("DeleteFile a échoué car le chemin du fichier est vide.")

   'Dans le cas du fichier non trouvé.
   Catch ex As FileNotFoundException
         Console.WriteLine("DeleteFile a échoué car le fichier '" + filePath + "' n'a pas été trouvé.")
     
   'Dans le cas d'un chemin de fichier invalide.
   Catch ex As NotSupportedException
         Console.WriteLine("DeleteFile a échoué car le chemin de fichier '" + filePath + "' n'est pas valide.")
         Console.WriteLine(ex.ToString())

   'Dans le cas d'une longueur du chemin spécifié excèdant le maximum authorisé.
   Catch ex As PathTooLongException
         Console.WriteLine("DeleteFile a échoué car la longueur du chemin spécifié(" + filePath.Length.ToString() + _
		") excède le maximum authorisé(248).")

   'Dans le cas d'un fichier utilisé par un autre processus
   Catch ex As IOException
         Console.WriteLine(DeleteFile a échoué car le fichier '" + filePath + " est actuellement utilisé par un autre processus")

   'Dans le cas d'un problème de sécurité
   Catch ex As SecurityException
         Console.WriteLine("DeleteFile a échoué car l'utilisateur n'a pas les droits nécessaires sur : '" + filePath + "' .")

   'Dans le cas d'un défaut de permission
   Catch ex As UnauthorizedAccessException
         Console.WriteLine("DeleteFile a échoué car l'utilisateur n'est pas autorisé à supprimer '" + filePath + "' .")

   'Dans tous les autres cas d'exception
   Catch ex As Exception
         Console.WriteLine("DeleteFile a échoué car :")
         Console.WriteLine(ex.ToString())
   End Try
   Console.Read()
End Sub
retour Class FileSystem

III-A-1-09. Fonction FileSystem.DirectoryExists

Shared Function DirectoryExists(dirPath As String) As Boolean
Détermine si le répertoire spécifié existe

warning Cette fonction ne lève par elle-même aucune exception. Attention si l'application ne possède pas les permissions suffisantes, telles que PermissionState.Unrestricted, DirectoryExists peut retourner False alors que le répertoire existe.
DirectoryExistsSample
							
Option Explicit On
Option Strict On

Imports Microsoft.VisualBasic.FileIO
Imports System

'...
Private Shared Sub DirectoryExistsSample()

   Dim dirPath As String = "C:\WINNT\inf"

   'SI le répertoire dirPath existe
   If My.Computer.FileSystem.DirectoryExists(dirPath) Then
         Console.WriteLine("le repertoire '" + dirPath + "' existe bien.")

   'SINON SI dirpath désigne plutôt un fichier
   ElseIf My.Computer.FileSystem.FileExists(dirPath) Then
         Console.WriteLine("le chemin '" + dirPath + "' désigne un fichier et non un répertoire.")

   'SINON dirpath ne peut être atteint
   Else
         Console.WriteLine("le repertoire '" + dirPath + "' n'a pas été trouvé, ou vous n'avez pas d'accès à ce répertoire.")
   End If
   Console.Read()
End Sub
retour Class FileSystem

III-A-1-10. Fonction FileSystem.FileExists

Shared Function FileExists(filePath As String) As Boolean
Détermine si le fichier spécifié existe

warning Cette fonction ne lève en fait par elle-même aucune exception, bien que la documentation MSDN 2005 prétende : MSDN 2005 FileExists

Attention si l'application ne possède pas les permissions suffisantes, telles que PermissionState.Unrestricted, FileExists peut retourner False alors que le fichier existe.
FileExistsSample
							
Option Explicit On
Option Strict On

Imports Microsoft.VisualBasic.FileIO
Imports System

'...
Private Shared Sub FileExistsSample()

   Dim filePath As String = "C:\WINNT\inf\1394.inf"

   'SI le fichier filePath existe
   If My.Computer.FileSystem.FileExists(filePath) Then
         Console.WriteLine("le fichier '" + filePath + "' existe bien.")

   'SINON SI filePath se termine par un backslash
   ElseIf filePath.EndsWith("\") Then
         Console.WriteLine(filePath + " contient un backslash('\') terminal inopportun.")
         'OTER le backslash
         Dim newPath As String = filePath.Substring(0, filePath.Length - 1)
   
         'SI newPath désigne bien un fichier existant
         If My.Computer.FileSystem.FileExists(newPath) Then
                  Console.WriteLine("Cependant le fichier '" + newPath + "' existe bien.")

         'SINON SI filePath désigne plutôt un répertoire existant
         ElseIf My.Computer.FileSystem.DirectoryExists(filePath) Then
                  Console.WriteLine(filePath + " est un répertoire existant, non un fichier.")
     
         'SINON newPath ne peut être atteint
         Else
                  Console.WriteLine(newPath + " ne designe ni un répertoire ni un fichier accessible.")
         End If
 
   'SINON SI filePath désigne plutôt un répertoire
   ElseIf My.Computer.FileSystem.DirectoryExists(filePath) Then
         Console.WriteLine("le chemin '" + filePath + "' est un répertoire existant, non un fichier.")
   
   'SINON filePath ne peut être atteint
   Else
         Console.WriteLine("le fichier '" + filePath + "' n'a pas été trouvé, ou vous n'avez pas d'accès à ce fichier.")
   End If
   Console.Read()
End Sub
retour Class FileSystem

III-A-1-11. Fonction FileSystem.FindInFiles

Shared Function FindInFiles(...) As ReadOnlyCollection(Of String)
Retourne une collection en lecture seule des noms des fichiers qui contiennent le texte spécifié.
Il existe 2 surcharges differentes à cette fonction :
Shared Function FindInFiles(dirPath As String , text As String, ignoreCase As Boolean, opt As SearchOption) _
	As ReadOnlyCollection(Of String)
Shared Function FindInFiles(dirPath As String , text As String, ignoreCase As Boolean, opt As SearchOption, _
	ParamArray extensions As String()) As ReadOnlyCollection(Of String)
warning Une collection vide est retournée si la chaine de caractères spécifiée n'est pas trouvé en fonction du modèle de recherche indiqué.
Le booléen ignoreCase doit avoir la valeur False pour une recherche case-sensitive. La valeur par défaut est True.
Le paramètre SearchOption : opt permet d'inclure ou pas les sous-repertoires du dossier spécifié.
Le ParamArray : extensions permet de limiter les types des fichiers concernés par la recherche, soit par exemple : ParamArray extensions
FindInFilesSample
							
Option Explicit On
Option Strict On

Imports Microsoft.VisualBasic.FileIO
Imports Microsoft.VisualBasic.Strings
Imports System
Imports System.IO
Imports System.Security

'...
Private Shared Sub FindInFilesSample()

   Dim dirPath As String
   Dim saisie As Integer
   Dim text As String
   Dim ignorecase As Boolean
   Dim searchoption As FileIO.SearchOption
   Dim files As ReadOnlyCollection(Of String)

   'CHOISIR dirPath
   Console.WriteLine("Saisissez le repertoire de la recherche puis 'Enter'")
   dirPath = Console.ReadLine()
   Console.WriteLine("Le repertoire de la recherche est: " + dirPath)
   Console.WriteLine()

   'CHOISIR text
   Console.WriteLine("Saisissez le texte à rechercher puis 'Enter'")
   text = Console.ReadLine()
   Console.WriteLine("Le texte recherché est: " + text)
   Console.WriteLine()

   'CHOISIR IgnoreCase
   Console.WriteLine("Choisissez une des options suivantes :")
   Console.WriteLine(Space(3) + "0 : Respecter la casse")
   Console.WriteLine(Space(3) + "1 : Ignorer la casse")
   saisie = Console.Read()
   While (Not(saisie = 48) AndAlso Not(saisie = 49))
         saisie = Console.Read()
   End While
   If saisie = 48 Then ignoreCase = False Else ignoreCase = True
         Console.WriteLine("Vous avez choisi IgnoreCase = " + ignoreCase.ToString())
         Console.WriteLine()

   'CHOISIR SearchOption
   Console.WriteLine("Choisissez une des options suivantes :")
   Console.WriteLine(Space(1) + "0 : Chercher aussi dans les sous-repertoires de " + dirPath)
   Console.WriteLine(Space(1) + "1 : Ignorer les sous-repertoires de " + dirPath)
   saisie = Console.Read()
   While (Not(saisie = 48) AndAlso Not(saisie = 49))
         saisie = Console.Read()
   End While
   If saisie = 48 _
      Then searchoption = FileIO.SearchOption.SearchAllSubDirectories _
      Else searchoption = FileIO.SearchOption.SearchTopLevelOnly
   Console.WriteLine("Vous avez choisi SearchOption = " + searchoption.ToString())
   Console.WriteLine()

   Console.WriteLine("FindInFiles en cours...")
   Try
   
         'EXECUTER la recherche
         files = My.Computer.FileSystem.FindInFiles(dirPath, text, ignorecase, searchoption)
         Console.WriteLine("FindInFiles terminé avec succès. " + files.Count.ToString() + " fichier(s) trouvé(s):")
         Console.WriteLine("---------------------------------------------------------------")

         'POUR CHAQUE chaine de caractère de files
         For Each file As String In files
                  'ECRIRE l'adresse de fichier récupéré
                  Console.WriteLine(Space(1) + file)
         Next

   'Dans le cas d'un chemin de repertoire Nothing.
   Catch ex As ArgumentNullException
         Console.WriteLine("FindInFiles a échoué car le chemin de répertoire est vide.")

   'Dans le cas du répertoire non trouvé.
   Catch ex As DirectoryNotFoundException
         Console.WriteLine("FindInFiles a échoué car le répertoire '" + dirPath + "' n'a pas été trouvé.")

   'Dans le cas d'un chemin de repertoire invalide.
   Catch ex As NotSupportedException
         Console.WriteLine("FindInFiles a échoué car le chemin de répertoire '" + dirPath + "' n'est pas valide.")

   'Dans le cas d'une longueur du chemin spécifié excèdant le maximum authorisé.
   Catch ex As PathTooLongException
         Console.WriteLine("FindInFiles a échoué car la longueur du chemin spécifié(" + dirPath.Length.ToString() + _
		") excède le maximum authorisé(248).")

   'Dans le cas d'un chemin correspondant à un fichier existant.
   Catch ex As IOException
         Console.WriteLine("FindInFiles a échoué car le chemin spécifié '" + dirPath + _
		"' correspond à un fichier existant, et non un répertoire")

   'Dans le cas d'un problème de sécurité.
   Catch ex As SecurityException
         Console.WriteLine("FindInFiles a échoué car l'utilisateur n'a pas les droits nécessaires sur : '" + dirPath + "' .")

   'Dans le cas d'un défaut d'autorisation d'accès.
   Catch ex As UnauthorizedAccessException
         Console.WriteLine("FindInFiles a échoué car l'utilisateur n'a pas les droits d'accès nécessaires.")

   'Dans tous les autres cas d'exception.
   Catch ex As Exception
         Console.WriteLine("FindInFiles a échoué car :")
         Console.WriteLine(ex.ToString())

   Finally
         Console.WriteLine("***************************************************************")
         Console.WriteLine()
   End Try
End Sub
retour Class FileSystem

III-A-1-12. Fonction FileSystem.GetDirectories

Shared Function GetDirectories(...) As ReadOnlyCollection(Of String)
Retourne une collection en lecture seule des chemins des sous-repertoires contenus par le repertoire spécifié.
Il existe 2 surcharges differentes à cette fonction :
Shared Function GetDirectories(dir As String) As ReadOnlyCollection(Of String)
Shared Function GetDirectories(dir As String, opt As SearchOption, _
	ParamArray pattern As String()) As ReadOnlyCollection(Of String)
retour Class FileSystem

III-A-1-13. Fonction FileSystem.GetDirectoryInfo

Shared Function GetDirectoryInfo(dirPath As String) As DirectoryInfo
Retourne le DirectoryInfo du chemin spécifié

retour Class FileSystem

III-A-1-14. Fonction FileSystem.GetDriveInfo

Shared Function GetDriveInfo(drive As String) As DriveInfo
Retourne le DriveInfo du lecteur spécifié

retour Class FileSystem

III-A-1-15. Fonction FileSystem.GetFileInfo

Shared Function GetFileInfo(filePath As String) As FileInfo
Retourne le FileInfo du chemin de fichier spécifié

retour Class FileSystem

III-A-1-16. Fonction FileSystem.GetFiles

Shared Function GetFiles(...) As ReadOnlyCollection(Of String)
Retourne une collection en lecture seule des noms des fichier contenus par le repertoire spécifié.
Il existe 2 surcharges differentes à cette fonction :
Shared Function GetFiles(dir As String) As ReadOnlyCollection(Of String)
Shared Function GetFiles(dir As String, opt As SearchOption, _
	ParamArray pattern As String()) As ReadOnlyCollection(Of String)
retour Class FileSystem

III-A-1-17. Fonction FileSystem.GetName

Shared Function GetName(path As String) As String
Extrait le nom du fichier du chemin spécifié et le retourne

retour Class FileSystem

III-A-1-18. Fonction FileSystem.GetParentPath

Shared Function GetParentPath(path As String) As String
Retourne le chemin du répertoire parent du chemin spécifié

retour Class FileSystem

III-A-1-19. Fonction FileSystem.GetTempFileName

Shared Function GetTempFileName() As String
Crée un fichier temporaire sur le disque (uniquement nommé zero-byte) et retourne le chemin complet de celui-ci

retour Class FileSystem

III-A-1-20. Procedure FileSystem.MoveDirectory

Shared Sub MoveDirectory(...)
Déplace le repertoire spécifié vers le nouveau chemin spécifié. Il existe 4 surcharges differentes à cette procédure :
Shared Sub MoveDirectory(fromFullPath As String, toDirPath As String)
Shared Sub MoveDirectory(fromFullPath As String, toDirPath As String, _
		overwrite As Boolean)
Shared Sub MoveDirectory(fromFullPath As String, toDirPath As String>, _
		opt As UIOption)
Shared Sub MoveDirectory(fromFullPath As String, toDirPath As String, _
		opt As UIOption, onCancel As UICancelOption)
retour Class FileSystem

III-A-1-21. Procedure FileSystem.MoveFile

Shared Sub MoveFile(...)
Déplace le fichier spécifié vers le nouveau chemin spécifié. Il existe 4 surcharges differentes à cette procédure :
Shared Sub MoveFile(fromFullPath As String, toFullPath As String)
Shared Sub MoveFile(fromFullPath As String, toFullPath As String, _
		overwrite As Boolean)
Shared Sub MoveFile(fromFullPath As String, toFullPath As String>, _
		opt As UIOption)
Shared Sub MoveFile(fromFullPath As String, toFullPath As String, _
		opt As UIOption, onCancel As UICancelOption)
retour Class FileSystem

III-A-1-22. Fonction FileSystem.OpenTextFieldParser

Shared Function OpenTextFieldParser(...) As TextFieldParser
Fournit un TextFieldParser pour le fichier texte structuré spécifié. Il existe 3 surcharges differentes à cette fonction :
Shared Function OpenTextFieldParser(textFile As String) As TextFieldParser
Shared Function OpenTextFieldParser(textFile As String, _
		ParamArray fieldWidths As Integer()) As TextFieldParser
Shared Function OpenTextFieldParser(textFile As String, _
		ParamArray delimiters As String()) As TextFieldParser
retour Class FileSystem

III-A-1-23. Fonction FileSystem.OpenTextFileReader

Shared Function OpenTextFileReader(...) As StreamReader
Fournit un StreamReader pour le chemin du fichier spécifié. Il existe 2 surcharges differentes à cette fonction :
Shared Function OpenTextFileReader(filePath As String) As StreamReader
Shared Function OpenTextFileReader(filePath As String, _
		encode As Encoding) As StreamReader
retour Class FileSystem

III-A-1-24. Fonction FileSystem.OpenTextFileWriter

Shared Function OpenTextFileWriter(...) As StreamWriter
Fournit un StreamWriter pour le chemin du fichier spécifié. Il existe 2 surcharges differentes à cette fonction :
Shared Function OpenTextFileWriter(filePath As String, _
		append As Boolean) As StreamWriter
Shared Function OpenTextFileWriter(filePath As String, _
		append As Boolean, encode As Encoding) As StreamWriter
retour Class FileSystem

III-A-1-25. Fonction FileSystem.ReadAllBytes

Shared Function ReadAllBytes(filePath As String) As Byte()
Retourne sous forme d'un Byte( ) tout le contenu du fichier spécifié.

retour Class FileSystem

III-A-1-26. Fonction FileSystem.ReadAllText

Shared Function ReadAllText(...) As String
Retourne sous forme d'une chaine de caractères le contenu du fichier texte spécifié.
Il existe 2 surcharges differentes à cette fonction :
Shared Function ReadAllText(textFilePath As String) As String
Shared Function ReadAllText(textFilePath As String, _
		encode As Encoding) As String
retour Class FileSystem

III-A-1-27. Procedure FileSystem.RenameDirectory

Shared Sub RenameDirectory(dirPath As String, newDirName As String)
Renomme le répertoire spécifié, avec le nouveau nom spécifié.

retour Class FileSystem

III-A-1-28. Procedure FileSystem.RenameFile

Shared Sub RenameFile(filePath As String, newFileName As String)
Renomme le fichier spécifié, avec le nouveau nom spécifié.

retour Class FileSystem

III-A-1-29. Procedure FileSystem.WriteAllBytes

Shared Sub WriteAllBytes(filePath As String, data As Byte(), append As Boolean)
Ecrit les données du Byte( ) spécifié dans le fichier spécifié.

retour Class FileSystem

III-A-1-30. Procedure FileSystem.WriteAllText

Shared Sub WritedAllText(...)
Ecrit la chaine de caractères dans le fichier texte spécifié.
Il existe 2 surcharges differentes à cette fonction :
Shared Sub WritedAllText(textFilePath As String, text As String, _
		append As Boolean)
Shared Sub WritedAllText(textFilePath As String, text As String _
		append As Boolean, encode As Encoding)
retour Class FileSystem

Exemple Console. FileSystemFullSample

info Voici un exemple simple pour vous familiariser avec l'utilisation de la classe FileSystem

FileSystemFullSample
Option Explicit On
Option Strict On

Imports Microsoft.VisualBasic.FileIO
Imports System
Imports System.Text

Class MainClass

    Shared Sub Main()
        TestFileSystem()
    End Sub
    
    Private Shared Sub TestFileSystem()
        Console.Read()
    End Sub
End Class
retour Class FileSystem


Pour plus d'information, voir la documentation Microsoft.VisualBasic.FileIO.


III-A-2. Class MalformedLineException

retour III-A. Particularités Visual Basic
Classe dérivée de System.Exception spécifiquement levée par la fonction TextFieldParser.ReadFields() lorsqu'elle ne peut analyser une ligne dans le format spécifié.
Par la propriété MalformedLineException.LineNumber, vous obtenez le numéro de la ligne incorrectement formée.
info Voici un exemple simple pour vous familiariser avec l'utilisation de la classe MalformedLineException
Ce petit code-test tente de parser un fichier texte structuré TestMalFormed.txt, selon un format imposé de largeur des champs
Fichier 'TestMalFormed.txt'
0001      Nom1         Description1
0002Nom2Description2
Exemple Console : 'TestMalformedLineException'
Option Explicit On
Option Strict On

Imports Microsoft.VisualBasic.FileIO
Imports System
Imports System.Text

Class MainClass

    Shared Sub Main()
        TestMalformedLineException()
    End Sub
    
    Private Shared Sub TestMalformedLineException()
        Using lecteur As New TextFieldParser("C:\TestMalFormed.txt", Encoding.Default)
            lecteur.TextFieldType = FieldType.FixedWidth
            lecteur.SetFieldWidths(4, 10, 21)

            While Not lecteur.EndOfData
                Console.WriteLine()
                Try
                    For Each champ As String In lecteur.ReadFields()
                        Console.WriteLine(champ)
                    Next
                Catch e As MalformedLineException
                    Dim erreur As New StringBuilder(String.Empty)
                    erreur.Append("La ligne ")
                    erreur.Append(e.LineNumber.ToString())
                    erreur.Append(" ne peut être analysée, car elle")
                    erreur.Append(" ne répond pas au format spécifié")
                    Console.WriteLine(erreur.ToString())
                End Try
            End While
        End Using
        Console.Read()
    End Sub
End Class
retour Class MalformedLineException


Pour plus d'information, voir la documentation Microsoft.VisualBasic.FileIO.


III-A-3. Class SpecialDirectories

retour III-A. Particularités Visual Basic
Classe qui
info Voici un exemple simple pour vous familiariser avec l'utilisation de la classe SpecialDirectories



Pour plus d'information, voir la documentation Microsoft.VisualBasic.FileIO.


III-A-4. Class TextFieldParser

retour III-A. Particularités Visual Basic
Classe qui
info Voici un exemple simple pour vous familiariser avec l'utilisation de la classe TextFieldParser



Pour plus d'information, voir la documentation Microsoft.VisualBasic.FileIO.


III-A-5. Enum DeleteDirectoryOption

retour III-A. Particularités Visual Basic
Enumération qui
info Voici un exemple simple pour vous familiariser avec l'utilisation de l'énumération DeleteDirectoryOption



Pour plus d'information, voir la documentation Microsoft.VisualBasic.FileIO.


III-A-6. Enum FieldType

retour III-A. Particularités Visual Basic
Enumération qui
info Voici un exemple simple pour vous familiariser avec l'utilisation de l'énumération FieldType



Pour plus d'information, voir la documentation Microsoft.VisualBasic.FileIO.


III-A-7. Enum RecycleOption

retour III-A. Particularités Visual Basic
Enumération qui
info Voici un exemple simple pour vous familiariser avec l'utilisation de l'énumération RecycleOption



Pour plus d'information, voir la documentation Microsoft.VisualBasic.FileIO.


III-A-8. Enum SearchOption

retour III-A. Particularités Visual Basic
Enumération qui
info Voici un exemple simple pour vous familiariser avec l'utilisation de l'énumération SearchOption



Pour plus d'information, voir la documentation Microsoft.VisualBasic.FileIO.


III-A-9. Enum UICancelOption

retour III-A. Particularités Visual Basic
Enumération qui
info Voici un exemple simple pour vous familiariser avec l'utilisation de l'énumération UICancelOption



Pour plus d'information, voir la documentation Microsoft.VisualBasic.FileIO.


III-A-9. Enum UIOption

retour III-A. Particularités Visual Basic
Enumération qui
info Voici un exemple simple pour vous familiariser avec l'utilisation de l'énumération UIOption



Pour plus d'information, voir la documentation Microsoft.VisualBasic.FileIO.


III-B. Nouvelles Classes :

retour III. Usage Général

III-B-1. DriveInfo

retour III-B. Nouvelles Classes

III-B-2. DeflateStream

retour III-B. Nouvelles Classes

III-B-3. GzipStream

retour III-B. Nouvelles Classes

III-B-4. SerialPort

retour III-B. Nouvelles Classes

III-C. Modifications :

retour III. Usage Général

III-C-1. Enumération FileOptions

retour III-C. Modifications

III-C-2. Mode Asynchrone

retour III-C. Modifications

IV. Sécurité :

retour au Sommaire
Niveau Avancé Confirmé
Niveau

IV-A. Gestion par programmation des Access Control Lists

retour IV. Sécurité

V. Liens Complémentaires:

retour au Sommaire




 Téléchargement de Microsoft Visual Basic 2005       en Microsoft Visual Basic 2005



Valid XHTML 1.1!Valid CSS!

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 © 2006 neguib. Aucune reproduction, même partielle, ne peut être faite de ce site ni de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.