FileSystem.FileOpen Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee opent u een bestand voor invoer of uitvoer. De My functie biedt u betere productiviteit en prestaties in bestands-I/O-bewerkingen dan FileOpen. Zie FileSystem voor meer informatie.
public static void FileOpen(int FileNumber, string FileName, Microsoft.VisualBasic.OpenMode Mode, Microsoft.VisualBasic.OpenAccess Access = Microsoft.VisualBasic.OpenAccess.Default, Microsoft.VisualBasic.OpenShare Share = Microsoft.VisualBasic.OpenShare.Default, int RecordLength = -1);
static member FileOpen : int * string * Microsoft.VisualBasic.OpenMode * Microsoft.VisualBasic.OpenAccess * Microsoft.VisualBasic.OpenShare * int -> unit
Public Sub FileOpen (FileNumber As Integer, FileName As String, Mode As OpenMode, Optional Access As OpenAccess = Microsoft.VisualBasic.OpenAccess.Default, Optional Share As OpenShare = Microsoft.VisualBasic.OpenShare.Default, Optional RecordLength As Integer = -1)
Parameters
- FileNumber
- Int32
Required. Elk geldig bestandsnummer. Gebruik de FreeFile functie om het volgende beschikbare bestandsnummer op te halen.
- FileName
- String
Required. Een tekenreeksexpressie die een bestandsnaam aangeeft, kan map of map en station bevatten.
- Mode
- OpenMode
Required. Opsomming waarmee de bestandsmodus wordt opgegeven: , , , of OutputRandom. InputBinaryAppend Zie voor meer informatie OpenMode .
- Access
- OpenAccess
Optional. Opsomming die de bewerkingen opgeeft die zijn toegestaan voor het geopende bestand: Read, Writeof ReadWrite. Wordt standaard ingesteld op ReadWrite. Zie voor meer informatie OpenAccess .
- Share
- OpenShare
Optional. Opsomming die de bewerkingen opgeeft die niet zijn toegestaan voor het geopende bestand door andere processen: Shared, Lock Read, Lock Write, en Lock Read Write. Wordt standaard ingesteld op Lock Read Write. Zie voor meer informatie OpenShare .
- RecordLength
- Int32
Optional. Getal kleiner dan of gelijk aan 32.767 (bytes). Voor bestanden die zijn geopend voor willekeurige toegang, is deze waarde de recordlengte. Voor sequentiële bestanden is deze waarde het aantal tekens dat wordt gebufferd.
Uitzonderingen
Recordlengte is negatief (en niet gelijk aan -1).
FileName is al geopend of FileName is ongeldig.
Voorbeelden
In dit voorbeeld ziet u verschillende toepassingen van de FileOpen functie om invoer en uitvoer in te schakelen voor een bestand.
Met de volgende code wordt het bestand TestFile in Input de modus geopend.
FileOpen(1, "TESTFILE", OpenMode.Input)
' Close before reopening in another mode.
FileClose(1)
In dit voorbeeld wordt het bestand alleen geopend in Binary de modus voor schrijfbewerkingen.
FileOpen(1, "TESTFILE", OpenMode.Binary, OpenAccess.Write)
' Close before reopening in another mode.
FileClose(1)
In het volgende voorbeeld wordt het bestand geopend in Random de modus. Het bestand bevat records van de structuur Person.
Structure Person
<VBFixedString(30)> Dim Name As String
Dim ID As Integer
End Structure
Public Sub ExampleMethod()
' Count 30 for the string, plus 4 for the integer.
FileOpen(1, "TESTFILE", OpenMode.Random, , , 34)
' Close before reopening in another mode.
FileClose(1)
End Sub
In dit codevoorbeeld wordt het bestand in Output de modus geopend. Elk proces kan naar het bestand lezen of schrijven.
FileOpen(1, "TESTFILE", OpenMode.Output, OpenAccess.Default, OpenShare.Shared)
' Close before reopening in another mode.
FileClose(1)
In dit codevoorbeeld wordt het bestand geopend in Binary de modus voor lezen. Andere processen kunnen het bestand niet lezen.
FileOpen(1, "TESTFILE", OpenMode.Binary, OpenAccess.Read,
OpenShare.LockRead)
Opmerkingen
De FileOpen functie is beschikbaar voor achterwaartse compatibiliteit en kan van invloed zijn op de prestaties. Voor niet-verouderde toepassingen biedt het My.Computer.FileSystem object betere prestaties. Zie File Access met Visual Basic voor meer informatie.
U moet een bestand openen voordat een I/O-bewerking erop kan worden uitgevoerd.
FileOpen wijst een buffer voor I/O toe aan het bestand en bepaalt de toegangsmodus die met de buffer moet worden gebruikt.
Important
Wanneer u naar een bestand schrijft, moet een toepassing mogelijk een bestand maken als het bestand waarnaar het probeert te schrijven niet bestaat. Hiervoor is toestemming nodig voor de map waarin het bestand moet worden gemaakt. Als het bestand dat is opgegeven, FileName echter wel bestaat, heeft de toepassing alleen toestemming nodig Write voor het bestand zelf. Indien mogelijk, om de beveiliging te verbeteren, maakt u het bestand tijdens de implementatie en verleent Write u alleen machtigingen aan dat bestand in plaats van aan de hele map. Schrijf gegevens naar gebruikersmappen in plaats van naar de hoofdmap of de map Program Files om de beveiliging te verbeteren.
Het te openen kanaal is te vinden met behulp van de FreeFile() functie.
Important
De FileOpen functie vereist Read toegang vanaf de FileIOPermissionAccess opsomming, die van invloed kan zijn op de uitvoering ervan in gedeeltelijke vertrouwenssituaties. Zie opsomming voor meer informatie FileIOPermissionAccess .