TUTOS.EU

Ecrire dans un fichier

Comment créer et écrire dans un fichier

Dim objFSO
Dim objTextFile
Dim CheminFichier
Dim CheminScriptActuel

'Déclaration des constantes
Const ForReading = 1
Const ForWritting = 2
Const ForAppending = 8

CheminScriptActuel = Left(wscript.scriptfullname,Len(wscript.scriptfullname)-Len(wscript.scriptname)-1)
CheminFichier = CheminScriptActuel & "\ZZMonFichier.txt" 'Déclaration du chemin et du nom du fichier
CheminFichier = Trim(InputBox("Entrez le chemin complet du fichier","Chemin complet du fichier",CheminFichier)) 'Validation du chemin et du nom du fichier

If Len(CheminFichier) > 0 Then
	Set objFSO = CreateObject("Scripting.FileSystemObject")
	Set objTextFile = objFSO.OpenTextFile(CheminFichier, ForAppending, True)
	objTextFile.WriteLine(Now) 'On ecrit la date et l'heure dans le fichier
	objTextFile.Close 'Fermeture du fichier

	Set objTextFile = Nothing
	Set objFSO = Nothing
Else
	Wscript.echo "Operation annulee"
End If 'CheminFichier
Lien vers le fichier : cliquez ici

Ecriture dans un fichier portant le même nom que le fichier contenant le script en ajoutant _log.txt

Option Explicit

Dim objFSO, objTextFile
Dim NomFichier, CheminFichier, CheminScriptActuel, ScriptFileName, Position

'Déclaration des constantes
Const ForReading = 1
Const ForWritting = 2
Const ForAppending = 8

ScriptFileName = wscript.scriptname
Position = InstrRev(ScriptFileName,".")
if (Position > 0) Then ScriptFileName = Left(ScriptFileName, Position - 1)

NomFichier = ScriptFileName & "_Log.txt"

CheminScriptActuel = Left(wscript.scriptfullname,Len(wscript.scriptfullname)-Len(wscript.scriptname)-1)
CheminFichier = CheminScriptActuel & "\" & NomFichier 'Déclaration du chemin et du nom du fichier
CheminFichier = Trim(InputBox("Entrez le chemin complet du fichier","Chemin complet du fichier",CheminFichier)) 'Validation du chemin et du nom du fichier

If Len(CheminFichier) > 0 Then
	Set objFSO = CreateObject("Scripting.FileSystemObject")
	Set objTextFile = objFSO.OpenTextFile(CheminFichier, ForAppending, True)
	objTextFile.WriteLine(Now) 'On ecrit la date et l'heure dans le fichier
	objTextFile.Close 'Fermeture du fichier

	Set objTextFile = Nothing
	Set objFSO = Nothing
Else
	Wscript.echo "Operation annulee"
End If 'CheminFichier
Lien vers le fichier : cliquez ici

Une variante avec déclaration des variables obligatoire, où le nom du fichier généré contient la date et l'heure ainsi que le nom du fichier contenant le script (sans l'extension)

Option Explicit

Dim objFSO, objTextFile
Dim NomFichier, CheminFichier, CheminScriptActuel, ScriptFileName, Position
Dim ActualDay, MyDay, MyMonth, varTime

'Déclaration des constantes
Const ForReading = 1
Const ForWritting = 2
Const ForAppending = 8

MyDay = Day(Now)
MyMonth = Month(Now)

If Len(MyDay) = 1 Then MyDay = "0" & MyDay
If Len(MyMonth) = 1 Then MyMonth = "0" & MyMonth
ActualDay = Year(Now) & "-" & MyMonth & "-" & MyDay

varTime = Time
varTime = Replace(varTime, ":", "-") 'Remplacement des : par - car : est un caractère interdit dans les noms de fichiers

ScriptFileName = wscript.scriptname
Position = InstrRev(ScriptFileName,".")
if (Position > 0) Then ScriptFileName = Left(ScriptFileName, Position - 1)

NomFichier = ActualDay & "_" & varTime & "_" & ScriptFileName & "_Log.txt"

CheminScriptActuel = Left(wscript.scriptfullname,Len(wscript.scriptfullname)-Len(wscript.scriptname)-1)
CheminFichier = CheminScriptActuel & "\" & NomFichier 'Déclaration du chemin et du nom du fichier
CheminFichier = Trim(InputBox("Entrez le chemin complet du fichier","Chemin complet du fichier",CheminFichier)) 'Validation du chemin et du nom du fichier

If Len(CheminFichier) > 0 Then
	Set objFSO = CreateObject("Scripting.FileSystemObject")
	Set objTextFile = objFSO.OpenTextFile(CheminFichier, ForAppending, True)
	objTextFile.WriteLine(Now) 'On ecrit la date et l'heure dans le fichier
	objTextFile.Close 'Fermeture du fichier

	Set objTextFile = Nothing
	Set objFSO = Nothing
Else
	Wscript.echo "Operation annulee"
End If 'CheminFichier
Lien vers le fichier : cliquez ici

Pages Web

Site WebDescription
MSDN Write MethodWrite Method sur le MSDN

Article(s) suivant(s)