anoniem Geplaatst: 27 januari 2002 Delen Geplaatst: 27 januari 2002 Hoe kan ik in VB zelf een file aanmaken? of VB laten controleren of een bestand eventueel al bestaat? Alvast bedankt Quote Link naar reactie
anoniem Geplaatst: 27 januari 2002 Auteur Delen Geplaatst: 27 januari 2002 FileExists Method ----------------- Description: Returns True if a specified file exists; False if it does not. Syntax: object.FileExists(filespec) The FileExists method syntax has these parts: object: Required. Always the name of a FileSystemObject. filespec: Required. The name of the file whose existence is to be determined. A complete path specification (either absolute or relative) must be provided if the file isn't expected to exist in the current folder. =========================== FileSystemObject Object ----------------------- Description: Provides access to a computer's file system. Syntax: Scripting.FileSystemObject Remarks: The following code illustrates how the FileSystemObject is used to return a TextStream object that can be read from or written to: Set fs = CreateObject("Scripting.FileSystemObject") Set a = fs.CreateTextFile("c:testfile.txt", True) a.WriteLine("This is a test.") a.Close In the code shown above, the CreateObject function returns the FileSystemObject (fs). The CreateTextFile method then creates the file as a TextStream object (a), and the WriteLine method writes a line of text to the created text file. The Close method flushes the buffer and closes the file. Bron: msdn.microsoft.com/library Quote Link naar reactie
anoniem Geplaatst: 31 januari 2002 Auteur Delen Geplaatst: 31 januari 2002 Ik heb het een geprobeerd en ik heb ook nog de msdn library doorgelezen maar ik snap er geen bal van. Kan iemand misschien iets duidelijker zijn? Quote Link naar reactie
anoniem Geplaatst: 1 februari 2002 Auteur Delen Geplaatst: 1 februari 2002 De volgende method gebruik ik voor het loggen van foutmeldingen in een logbestand. HEt controleert niet of het al bestaat, maar daar kan de functie in de vorige post voor worden gebruikt. [code:1:ca50049c63] Public Sub g_logMessage(ByVal strMessage As String) Open "C:Err.log" For Append As #1 Print #1 strMessage Close #1 End Sub [/code:1:ca50049c63] Stelt dus niet al te veel voor... Quote Link naar reactie
anoniem Geplaatst: 1 februari 2002 Auteur Delen Geplaatst: 1 februari 2002 Misschien vind je dit wel makkelijker [code:1:dd2a245162]Private Sub MaakBestand() Dim fso, a Set fso = CreateObject("Scripting.FileSystemObject") If Not fso.FileExists("C:Tekstbestand.txt") Then Set a = fso.CreateTextFile("C:Tekstbestand.txt", True) a.WriteLine ("This is a test.") a.Close Else MsgBox "Bestand bestaat al" End If Set a = Nothing Set fso = Nothing End Sub[/code:1:dd2a245162] _________________ Als de leer niet met de feiten strookt dan dienen de feiten te worden aangepast! [ Dit Bericht is bewerkt door: DarkScribe op 2002-02-01 14:43 ] Quote Link naar reactie
anoniem Geplaatst: 1 februari 2002 Auteur Delen Geplaatst: 1 februari 2002 Dat zei ik toch. :wink: Quote Link naar reactie
anoniem Geplaatst: 1 februari 2002 Auteur Delen Geplaatst: 1 februari 2002 Dat klopt maar zo is het iets duidelijker. Veel mensen kunnen niet goed overweg met mdsn style informatie. Quote Link naar reactie
anoniem Geplaatst: 1 februari 2002 Auteur Delen Geplaatst: 1 februari 2002 Nou, ik krijg het nu in ieder geval voor elkaar om een file aan te laten maken en het lukt nu ook om te controleren of de file in kwestie al bestaat. Alleen begrijp ik eigenlijk niet goed wat er nu eigenlijk gebeurt. En dus heb ik er eigenlijk maar weinig bijgeleerd. Waar komt bijv dat "scripting.filesystemobject" vandaan? Quote Link naar reactie
anoniem Geplaatst: 2 februari 2002 Auteur Delen Geplaatst: 2 februari 2002 Laat ik de code eerst even veranderen opdat je wat makkelijker snapt wat er gaat gebeuren. Eerst ga je via Menu, Project, References... op zoek naar Microsoft Scripting Runtime. Als je deze aanvinkt zie je er vlak onder dat we te maken hebben met een dll bestand, scrrun.dll. Aanvinken, dus en dialoog sluiten. [code:1:ce66b5f887]Private Sub MaakBestand() Dim fso As FileSystemObject Dim a As TextStream Set fso = New FileSystemObject If Not fso.FileExists("C:Tekstbestand.txt") Then Set a = fso.CreateTextFile("C:Tekstbestand.txt", True) a.WriteLine ("This is a test.") a.Close Else MsgBox "Bestand bestaat al" End If Set a = Nothing Set fso = Nothing End Sub[/code:1:ce66b5f887] Op deze manier werkt het ook maar er is een bijkomend voordeel, je kunt via F2 (Menu, View, Object Browser) alle variabelen en klassen en functies bekijken in de Microsoft Scripting Runtime. In de DropDown Box linksboven staat <All Libraries> maar daar kies je voor Scripting zodat je alleen de klassen, variabelen, enumerators, constants, functies en dergelijke ziet van de Microsoft Scripting Runtime oftewel scrrun.dll. Wat je hier eigenlijk ziet zijn een aantal objecten die betrekking hebben op bestanden, folders, schijven en wat niet meer. Het is een stuk programma dat je kunt gebruiken in jouw programma. De achterliggende code zie je niet, en dat is ook niet belangrijk. Wel belangrijk is dat je de objecten en variabelen en dergelijke kunt gebruiken. FileSystemObject is een object waarin allerlei bewerkingen met bestanden of folders verwerkt zijn. Het is een makkelijke manier om jou te beschermen tegen het gebruiken van API aanroepen. Deze API aanroepen, met alle rompslomp er om heen, zit verborgen in de dll en wat je ziet is alleen maar een interface die veel gemakkelijker te begrijpen is. Quote Link naar reactie
anoniem Geplaatst: 2 februari 2002 Auteur Delen Geplaatst: 2 februari 2002 Bedankt voor je uitleg. zo leer je nog eens wat :wink: Quote Link naar reactie
Aanbevolen berichten
Om een reactie te plaatsen, moet je eerst inloggen