Maison >tutoriels informatiques >connaissances en informatique >Code VB : Comment écrire du code pour supprimer les fichiers spécifiés sur l'ordinateur ?
Vous pouvez jeter un œil à la fonction kill :
kill supprime les fichiers du disque.
Tuer le nom du chemin
Le paramètre pathname est une expression de chaîne utilisée pour spécifier un nom de fichier.
pathname peut contenir des répertoires ou des dossiers et des lecteurs.
Instructions
Dans Microsoft Windows, Kill prend en charge les caractères génériques à plusieurs caractères (*) et à un seul caractère (?) pour spécifier plusieurs fichiers.
Exemple :
Sous-commande privée1_Click()
Kill "C:aa.txt" 'Le chemin absolu du fichier"
Fin du sous-marin
Si vous supprimez complètement le fichier, tout le monde ci-dessus a raison !
Mais si vous mettez le fichier dans la "Corbeille" au lieu de le supprimer complètement, vous devez utiliser vb
fonction API maintenant !
Exemple :
Dans les modules publics :
Option explicite
Construction publique FO_MOVE = &H1
Construction publique FO_COPY = &H2
Construction publique FO_DELETE = &H3
Construction publique FO_RENAME = &H4
Construction Publique FOF_NOCONFIRMATION = &H10
Construction publique FOF_NOCONFIRMMKDIR = &H200
Construction publique FOF_ALLOWUNDO = &H40
Tapez SHFILEOPSTRUCT
hWnd aussi longtemps
wFunc aussi longtemps
pFrom As String
pTo comme chaîne
fDrapeaux en tant qu'entier
fAborté comme booléen
hNameMaps aussi longtemps
sProgress As String
Type de fin
Déclarer la fonction SHFileOperation Lib "shell32.dll" Alias "SHFileOperationA" (lpFileOp As SHFILEOPSTRUCT) As Long
Dans le module frm :
Sous-commande privée1_Click()
Diminuer SHFileOp en tant que SHFILEOPSTRUCT
Dim Path As String, pFrom As String, i As Integer
pFrom ="c:aa.txt"
SHFileOp.wFunc = FO_DELETE
SHFileOp.pFrom = pFrom
SHFileOp.fFlags = FOF_ALLOWUNDO + FOF_NOCONFIRMATION
SHFileOperation SHFileOp
Fin du sous-marin
Je pense que l'affiche visait à mettre le fichier dans la "corbeille", donc. . .
Dim nouveau fichier en tant que nouvelle liste (de chaîne)
Pour chaque ligne sous forme de chaîne dans System.IO.File.ReadAllLines("TextFile1.txt")
Si ce n'est pas line.StartsWith("3") Then newfile.Add(line)
Suivant
System.IO.File.WriteAllLines("TextFile1.txt", newfile) Créez une collection, utilisez ReadAllLines de System.IO.File pour lire tout le contenu et jugez un par un si quelque chose doit être ajouté à la collection, si c'est quelque chose qui doit être supprimé, ne le faites pas non plus, utilisez simplement WriteAllLines pour écrire à la fin.
Expliquez ici, le code ci-dessus est utilisé pour supprimer toutes les lignes de texte commençant par 3.
Ajoutez un contrôle FILELISTBOX sur le formulaire et définissez-le sur invisible
Sous-Formulaire Privé_Load()
On Error GoTo MyError 'Définir le piège d'erreur
Dim MyPath As String 'Définissez le chemin du répertoire du fichier à supprimer
Dim MyPattern As String 'Définissez le type de fichier à supprimer
Dim YesterdayName, TodayName As String 'Définit les noms de fichiers d'hier et d'aujourd'hui
MonChemin = '"D:TempPath"
MyPattern = "*.TXT" 'Nom du fichier contenant la date, par exemple AAAA-MM-JJ.TXT
Fichier1.Path = MonChemin
Fichier1.Pattern = MonPattern
YesterdayName = Format(DateAdd("d", -1, Date), "YYYY-MM-DD") + ".TXT" 'Nom du fichier contenant la date d'hier
TodayName = Format(Date$, "YYYY-MM-DD") + ".TXT" 'Nom du fichier contenant la date d'aujourd'hui
Si File1.ListCount > 0 Alors
Pour i% = 0 vers File1.ListCount - 1
File1.ListIndex = i%
Si File1.FileName CurrentName et File1.FileName CurrentName Then 'Si le nom du fichier n'est pas égal au nom du fichier d'aujourd'hui ou d'hier, supprimez-le
Tuer File1.Path + """ + File1.FileName
Fin si
Suivant i%
Fin si
MonErreur :
File1.Refresh 'Une fois toutes les suppressions terminées, actualisez la liste
Fin du sous-marin
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!