Share via


FileSystem.FilePut Yöntem

Tanım

Bir değişkenden gelen veriyi disk dosyasına yazar. Bu My özellik, dosya G/Ç işlemlerinde FilePutdaha iyi üretkenlik ve performans sağlar. F Daha fazla bilgi için bkz FileSystem. .

Aşırı Yüklemeler

FilePut(Int32, Int64, Int64)

Bir değişkenden gelen veriyi disk dosyasına yazar. Bu My özellik, dosya G/Ç işlemlerinde FilePutdaha iyi üretkenlik ve performans sağlar. Daha fazla bilgi için bkz. FileSystem.

FilePut(Int32, String, Int64, Boolean)

Bir değişkenden gelen veriyi disk dosyasına yazar. Bu My özellik, dosya G/Ç işlemlerinde FilePutdaha iyi üretkenlik ve performans sağlar. Daha fazla bilgi için bkz. FileSystem.

FilePut(Object, Object, Object)
Geçersiz.
Geçersiz.
Geçersiz.

Bir değişkenden gelen veriyi disk dosyasına yazar. Bu My özellik, dosya G/Ç işlemlerinde FilePutdaha iyi üretkenlik ve performans sağlar. Daha fazla bilgi için bkz. FileSystem.

FilePut(Int32, ValueType, Int64)

Bir değişkenden gelen veriyi disk dosyasına yazar. Bu My özellik, dosya G/Ç işlemlerinde FilePutdaha iyi üretkenlik ve performans sağlar. Daha fazla bilgi için bkz. FileSystem.

FilePut(Int32, Single, Int64)

Bir değişkenden gelen veriyi disk dosyasına yazar. Bu My özellik, dosya G/Ç işlemlerinde FilePutdaha iyi üretkenlik ve performans sağlar. Daha fazla bilgi için bkz. FileSystem.

FilePut(Int32, Int32, Int64)

Bir değişkenden gelen veriyi disk dosyasına yazar. Bu My özellik, dosya G/Ç işlemlerinde FilePutdaha iyi üretkenlik ve performans sağlar. Daha fazla bilgi için bkz. FileSystem.

FilePut(Int32, Array, Int64, Boolean, Boolean)

Bir değişkenden gelen veriyi disk dosyasına yazar. Bu My özellik, dosya G/Ç işlemlerinde FilePutdaha iyi üretkenlik ve performans sağlar. Daha fazla bilgi için bkz. FileSystem.

FilePut(Int32, Double, Int64)

Bir değişkenden gelen veriyi disk dosyasına yazar. Bu My özellik, dosya G/Ç işlemlerinde FilePutdaha iyi üretkenlik ve performans sağlar. Daha fazla bilgi için bkz. FileSystem.

FilePut(Int32, Decimal, Int64)

Bir değişkenden gelen veriyi disk dosyasına yazar. Bu My özellik, dosya G/Ç işlemlerinde FilePutdaha iyi üretkenlik ve performans sağlar. Daha fazla bilgi için bkz. FileSystem.

FilePut(Int32, DateTime, Int64)

Bir değişkenden gelen veriyi disk dosyasına yazar. Bu My özellik, dosya G/Ç işlemlerinde FilePutdaha iyi üretkenlik ve performans sağlar. Daha fazla bilgi için bkz. FileSystem.

FilePut(Int32, Char, Int64)

Bir değişkenden gelen veriyi disk dosyasına yazar. Bu My özellik, dosya G/Ç işlemlerinde FilePutdaha iyi üretkenlik ve performans sağlar. Daha fazla bilgi için bkz. FileSystem.

FilePut(Int32, Byte, Int64)

Bir değişkenden gelen veriyi disk dosyasına yazar. Bu My özellik, dosya G/Ç işlemlerinde FilePutdaha iyi üretkenlik ve performans sağlar. Daha fazla bilgi için bkz. FileSystem.

FilePut(Int32, Boolean, Int64)

Bir değişkenden gelen veriyi disk dosyasına yazar. Bu My özellik, dosya G/Ç işlemlerinde FilePutdaha iyi üretkenlik ve performans sağlar. Daha fazla bilgi için bkz. FileSystem.

FilePut(Int32, Int16, Int64)

Bir değişkenden gelen veriyi disk dosyasına yazar. Bu My özellik, dosya G/Ç işlemlerinde FilePutdaha iyi üretkenlik ve performans sağlar. Daha fazla bilgi için bkz. FileSystem.

FilePut(Int32, Int64, Int64)

Kaynak:
FileSystem.vb
Kaynak:
FileSystem.vb
Kaynak:
FileSystem.vb

Bir değişkenden gelen veriyi disk dosyasına yazar. Bu My özellik, dosya G/Ç işlemlerinde FilePutdaha iyi üretkenlik ve performans sağlar. Daha fazla bilgi için bkz. FileSystem.

public static void FilePut (int FileNumber, long Value, long RecordNumber = -1);
static member FilePut : int * int64 * int64 -> unit
Public Sub FilePut (FileNumber As Integer, Value As Long, Optional RecordNumber As Long = -1)

Parametreler

FileNumber
Int32

Gereklidir. Herhangi bir geçerli dosya numarası.

Value
Int64

Gereklidir. Diske yazılan veriyi içeren geçerli değişken adı.

RecordNumber
Int64

İsteğe bağlı. Yazmanın başladığı kayıt numarası (Random mod dosyaları) veya bayt numarası (Binary mod dosyaları).

Özel durumlar

RecordNumber< 1 ve -1'e eşit değildir.

Dosya modu geçersiz.

Örnekler

Bu örnekte, bir dosyaya veri yazmak için işlevi kullanılır FilePut . Yapıya Person ait beş kayıt dosyaya yazılır.

Structure Person
    Public ID As Integer
    Public Name As String
End Structure

Sub WriteData()
    Dim PatientRecord As Person
    Dim recordNumber As Integer
    '    Open file for random access.
    FileOpen(1, "C:\TESTFILE.txt", OpenMode.Binary)
    ' Loop 5 times.
    For recordNumber = 1 To 5
        ' Define ID.
        PatientRecord.ID = recordNumber
        ' Create a string.
        PatientRecord.Name = "Name " & recordNumber
        ' Write record to file.
        FilePut(1, PatientRecord)
    Next recordNumber
    FileClose(1)
End Sub

Açıklamalar

FilePutyalnızca ve Binary modunda Random geçerlidir.

ile FilePut yazılan veriler genellikle kullanılarak FileGetbir dosyadan okunur.

Bir dosyadaki ilk kayıt veya bayt, 1 konumunda, ikinci kayıt veya bayt, 2 konumunda ve benzeri şekildedir. atlarsanızRecordNumber, son veya işlevden sonraki veya son FileGet işlev tarafından işaret edilen sonraki Seek kayıt veya FilePut bayt yazılır.

bağımsız değişkeni, StringIsFixedLength işlevin dizeleri değişken veya sabit uzunluk olarak yorumlayıp yorumlamayacağını denetler. FilePut bağımsız değişkeni olduğunda Trueuzunluk tanımlayıcısını yazmaz. ile FilePutkullanıyorsanızStringIsFixedLength = True, ile aynı FileGetişlemi yapmanız ve dizenin beklenen uzunlukta başlatıldığından emin olmanız gerekir.

Rastgele Modu

Modda Random açılan dosyalar için aşağıdaki kurallar geçerlidir:

  • Yazılan verilerin uzunluğu işlevin yan tümcesinde RecordLength belirtilen uzunluktan FileOpen küçükse, FilePut sonraki kayıtları kayıt uzunluğu sınırlarına yazar. Bir kaydın bitişi ve sonraki kaydın başlangıç noktası arasındaki boşluk, dosya arabelleğinin varolan içeriğiyle doldurulur. Doldurma verilerinin miktarı kesin olarak belirlenemeyeceğinden, genellikle kayıt uzunluğunun yazılan verilerin uzunluğuyla eşleştirmek iyi bir fikirdir. Yazılan verilerin uzunluğu işlevin yan tümcesinde RecordLength belirtilen uzunluktan FileOpen büyükse, bir özel durum oluşturulur.

  • Yazılan değişken bir dizeyse, FilePut dize uzunluğunu içeren iki baytlık bir tanımlayıcı yazar ve ardından değişkene giden verileri yazar. Bu nedenle, işlevdeki yan tümcesi RecordLength tarafından belirtilen kayıt uzunluğu dizenin FileOpen gerçek uzunluğundan en az iki bayt büyük olmalıdır.

  • Yazılan değişken sayısal bir tür içeren bir nesneyse, FilePut nesnesini tanımlayan VarType iki bayt yazar ve ardından değişkeni yazar. Örneğin, tamsayı FilePut içeren bir nesne yazarken altı bayt yazar: nesneyi (Integer) olarak VarType(3) tanımlayan iki bayt ve verileri içeren dört bayt. İşlevdeki FileOpen parametresi tarafından RecordLength belirtilen kayıt uzunluğu, değişkeni depolamak için gereken gerçek bayt sayısından en az iki bayt büyük olmalıdır.

  • Yazılan değişken bir dize içeren bir nesneyse, FilePut nesnesini tanımlayan VarType(8) iki baytlık bir tanımlayıcı, dizenin uzunluğunu belirten iki baytlık bir tanımlayıcı yazar ve sonra dize verilerini yazar. İşlevdeki parametresi tarafından belirtilen kayıt uzunluğu, dizenin RecordLengthFileOpen gerçek uzunluğundan en az dört bayt büyük olmalıdır. Tanımlayıcısı olmayan bir dize koymak istiyorsanız parametresine StringIsFixedLength geçmeniz True ve içinde okuduğunuz dizenin doğru uzunlukta olması gerekir.

  • Yazılan değişken bir dizi ise, dizi boyutları ve boyut için bir tanımlayıcıyı yazmanız gerekip gerekmediğine dair bir seçeneğiniz vardır. Visual Basic 6.0 ve önceki sürümleri, sabit boyutlu dizi için değil ancak dinamik bir dizi için dosya tanımlayıcısı yazar. Visual Basic 2005'de, tanımlayıcı yazılamıyor varsayılandır. Tanımlayıcıyı yazmak için parametresini ArrayIsDynamic olarak Trueayarlayın. Diziyi yazarken, dizinin okunduğu şekilde eşleştirmelisiniz; tanımlayıcı ile okunacaksa, tanımlayıcıyı yazmalısınız. Tanımlayıcı, her bir derece için dizi derecesi, boyutu ve alt sınırı belirtir. Uzunluğu, boyut sayısının 2 artı 8 katına eşittir: (2 + 8 * NumberOfDimensions). İşlevdeki FileOpen yan tümcesi RecordLength tarafından belirtilen kayıt uzunluğu, dizi verilerini ve dizi tanımlayıcısını yazmak için gereken tüm baytların toplamından büyük veya buna eşit olmalıdır. Örneğin, aşağıdaki dizi bildirimi dizi diske yazıldığı zaman 218 bayt gerektirir.

    Dim MyArray(4, 9) As Integer
    
  • Yazılan değişken başka bir değişken türüyse (değişken uzunluğunda bir dize veya nesne değil), FilePut yalnızca değişken verilerini yazar. İşlevdeki FileOpen yan tümcesi RecordLength tarafından belirtilen kayıt uzunluğu, yazılan verilerin uzunluğundan büyük veya buna eşit olmalıdır.

  • FilePut her biri ayrı ayrı yazılmış gibi yapı öğelerini yazar, ancak öğeler arasında doldurma yoktur. Öznitelik, VBFixedString diske yazıldığında dizenin boyutunu göstermek için yapılardaki dize alanlarına uygulanabilir.

    Not

    Özniteliği tarafından VBFixedString belirtilenden daha fazla bayt içeren dize alanları diske yazıldığında kesilir,

İkili Mod

Modda Binary açılan dosyalar için, bazı özel durumlar dışında mod kurallarının Random çoğu uygulanır. Modda açılan dosyalar için aşağıdaki kurallar, Binary mod kurallarından Random farklıdır:

  • RecordLength İşlevdeki yan tümcesinin FileOpen hiçbir etkisi yoktur. FilePut tüm değişkenleri bitişik olarak, yani kayıtlar arasında doldurma olmadan diske yazar.

  • Yapıdaki FilePut bir dizi dışında herhangi bir dizi için yalnızca verileri yazar. Hiçbir tanımlayıcı yazılmıyor.

  • FilePut iki baytlık uzunluk tanımlayıcısı olmadan yapıların öğeleri olmayan değişken uzunlukta dizeler yazar. Yazılan bayt sayısı dizedeki karakter sayısına eşittir. Örneğin, aşağıdaki ifadeler dosya numarası 1'e 11 bayt yazar:

    Dim hellow As String = "Hello World"
    FilePut(1, hellow)
    
  • işlevini kullanarak bir dosyaya FilePut yazmak için sabit listesinden FileIOPermissionAccess erişim gerekirWrite.

Ayrıca bkz.

Şunlara uygulanır

FilePut(Int32, String, Int64, Boolean)

Kaynak:
FileSystem.vb
Kaynak:
FileSystem.vb
Kaynak:
FileSystem.vb

Bir değişkenden gelen veriyi disk dosyasına yazar. Bu My özellik, dosya G/Ç işlemlerinde FilePutdaha iyi üretkenlik ve performans sağlar. Daha fazla bilgi için bkz. FileSystem.

public static void FilePut (int FileNumber, string Value, long RecordNumber = -1, bool StringIsFixedLength = false);
static member FilePut : int * string * int64 * bool -> unit
Public Sub FilePut (FileNumber As Integer, Value As String, Optional RecordNumber As Long = -1, Optional StringIsFixedLength As Boolean = false)

Parametreler

FileNumber
Int32

Gereklidir. Herhangi bir geçerli dosya numarası.

Value
String

Gereklidir. Diske yazılan veriyi içeren geçerli değişken adı.

RecordNumber
Int64

İsteğe bağlı. Yazmanın başladığı kayıt numarası (Random mod dosyaları) veya bayt numarası (Binary mod dosyaları).

StringIsFixedLength
Boolean

İsteğe bağlı. Yalnızca dize yazarken geçerlidir. Dosyaya dize için iki baytlık dize uzunluğu tanımlayıcısının yazılıp yazılmayacağını belirtir. Varsayılan değer: False.

Özel durumlar

RecordNumber< 1 ve -1'e eşit değildir.

Dosya modu geçersiz.

Örnekler

Bu örnekte, bir dosyaya veri yazmak için işlevi kullanılır FilePut . Yapıya Person ait beş kayıt dosyaya yazılır.

Structure Person
    Public ID As Integer
    Public Name As String
End Structure

Sub WriteData()
    Dim PatientRecord As Person
    Dim recordNumber As Integer
    '    Open file for random access.
    FileOpen(1, "C:\TESTFILE.txt", OpenMode.Binary)
    ' Loop 5 times.
    For recordNumber = 1 To 5
        ' Define ID.
        PatientRecord.ID = recordNumber
        ' Create a string.
        PatientRecord.Name = "Name " & recordNumber
        ' Write record to file.
        FilePut(1, PatientRecord)
    Next recordNumber
    FileClose(1)
End Sub

Açıklamalar

FilePutyalnızca ve Binary modunda Random geçerlidir.

ile FilePut yazılan veriler genellikle kullanılarak FileGetbir dosyadan okunur.

Bir dosyadaki ilk kayıt veya bayt, 1 konumunda, ikinci kayıt veya bayt, 2 konumunda ve benzeri şekildedir. atlarsanızRecordNumber, son veya işlevden sonraki veya son FileGet işlev tarafından işaret edilen sonraki Seek kayıt veya FilePut bayt yazılır.

bağımsız değişkeni, StringIsFixedLength işlevin dizeleri değişken veya sabit uzunluk olarak yorumlayıp yorumlamayacağını denetler. FilePut bağımsız değişkeni olduğunda Trueuzunluk tanımlayıcısını yazmaz. ile FilePutkullanıyorsanızStringIsFixedLength = True, ile aynı FileGetişlemi yapmanız ve dizenin beklenen uzunlukta başlatıldığından emin olmanız gerekir.

Rastgele Modu

Modda Random açılan dosyalar için aşağıdaki kurallar geçerlidir:

  • Yazılan verilerin uzunluğu işlevin yan tümcesinde RecordLength belirtilen uzunluktan FileOpen küçükse, FilePut sonraki kayıtları kayıt uzunluğu sınırlarına yazar. Bir kaydın bitişi ve sonraki kaydın başlangıç noktası arasındaki boşluk, dosya arabelleğinin varolan içeriğiyle doldurulur. Doldurma verilerinin miktarı kesin olarak belirlenemeyeceğinden, genellikle kayıt uzunluğunun yazılan verilerin uzunluğuyla eşleştirmek iyi bir fikirdir. Yazılan verilerin uzunluğu işlevin yan tümcesinde RecordLength belirtilen uzunluktan FileOpen büyükse, bir özel durum oluşturulur.

  • Yazılan değişken bir dizeyse, FilePut dize uzunluğunu içeren iki baytlık bir tanımlayıcı yazar ve ardından değişkene giden verileri yazar. Bu nedenle, işlevdeki yan tümcesi RecordLength tarafından belirtilen kayıt uzunluğu dizenin FileOpen gerçek uzunluğundan en az iki bayt büyük olmalıdır.

  • Yazılan değişken sayısal bir tür içeren bir nesneyse, FilePut nesnesini tanımlayan VarType iki bayt yazar ve ardından değişkeni yazar. Örneğin, tamsayı FilePut içeren bir nesne yazarken altı bayt yazar: nesneyi (Integer) olarak VarType(3) tanımlayan iki bayt ve verileri içeren dört bayt. İşlevdeki FileOpen parametresi tarafından RecordLength belirtilen kayıt uzunluğu, değişkeni depolamak için gereken gerçek bayt sayısından en az iki bayt büyük olmalıdır.

  • Yazılan değişken bir dize içeren bir nesneyse, FilePut nesnesini tanımlayan VarType(8) iki baytlık bir tanımlayıcı, dizenin uzunluğunu belirten iki baytlık bir tanımlayıcı yazar ve sonra dize verilerini yazar. İşlevdeki parametresi tarafından belirtilen kayıt uzunluğu, dizenin RecordLengthFileOpen gerçek uzunluğundan en az dört bayt büyük olmalıdır. Tanımlayıcısı olmayan bir dize koymak istiyorsanız parametresine StringIsFixedLength geçmeniz True ve içinde okuduğunuz dizenin doğru uzunlukta olması gerekir.

  • Yazılan değişken bir dizi ise, dizi boyutları ve boyut için bir tanımlayıcıyı yazmanız gerekip gerekmediğine dair bir seçeneğiniz vardır. Visual Basic 6.0 ve önceki sürümleri, sabit boyutlu dizi için değil ancak dinamik bir dizi için dosya tanımlayıcısı yazar. Visual Basic 2005'de, tanımlayıcı yazılamıyor varsayılandır. Tanımlayıcıyı yazmak için parametresini ArrayIsDynamic olarak Trueayarlayın. Diziyi yazarken, dizinin okunduğu şekilde eşleştirmelisiniz; tanımlayıcı ile okunacaksa, tanımlayıcıyı yazmalısınız. Tanımlayıcı, her bir derece için dizi derecesi, boyutu ve alt sınırı belirtir. Uzunluğu, boyut sayısının 2 artı 8 katına eşittir: (2 + 8 * NumberOfDimensions). İşlevdeki FileOpen yan tümcesi RecordLength tarafından belirtilen kayıt uzunluğu, dizi verilerini ve dizi tanımlayıcısını yazmak için gereken tüm baytların toplamından büyük veya buna eşit olmalıdır. Örneğin, aşağıdaki dizi bildirimi dizi diske yazıldığı zaman 218 bayt gerektirir.

    Dim MyArray(4, 9) As Integer
    
  • Yazılan değişken başka bir değişken türüyse (değişken uzunluğunda bir dize veya nesne değil), FilePut yalnızca değişken verilerini yazar. İşlevdeki FileOpen yan tümcesi RecordLength tarafından belirtilen kayıt uzunluğu, yazılan verilerin uzunluğundan büyük veya buna eşit olmalıdır.

  • FilePut öğelerin arasında doldurma olmaması dışında, yapıların öğelerini her biri tek tek yazılmış gibi yazar. Özniteliği, VBFixedString diske yazıldığında dizenin boyutunu göstermek için yapılardaki dize alanlarına uygulanabilir.

    Not

    Özniteliği tarafından VBFixedString belirtilenden daha fazla bayt içeren dize alanları diske yazıldığında kesilir,

İkili Mod

Modda Binary açılan dosyalar için, bazı özel durumlar dışında mod kurallarının Random çoğu uygulanır. Modda Binary açılan dosyalar için aşağıdaki kurallar, mod kurallarından Random farklıdır:

  • RecordLength işlevindeki yan tümcesinin FileOpen hiçbir etkisi yoktur. FilePut tüm değişkenleri bitişik olarak, yani kayıtlar arasında doldurma olmadan diske yazar.

  • Yapıdaki bir dizi dışında herhangi bir dizi için yalnızca FilePut verileri yazar. Hiçbir tanımlayıcı yazılmıyor.

  • FilePut iki baytlık uzunluk tanımlayıcısı olmadan yapıların öğesi olmayan değişken uzunlukta dizeler yazar. Yazılan bayt sayısı dizedeki karakter sayısına eşittir. Örneğin, aşağıdaki ifadeler dosya numarası 1'e 11 bayt yazar:

    Dim hellow As String = "Hello World"
    FilePut(1, hellow)
    
  • işlevini kullanarak bir dosyaya FilePut yazmak için sabit listesinden FileIOPermissionAccess erişim gerekirWrite.

Ayrıca bkz.

Şunlara uygulanır

FilePut(Object, Object, Object)

Kaynak:
FileSystem.vb
Kaynak:
FileSystem.vb
Kaynak:
FileSystem.vb

Dikkat

This member has been deprecated. Please use FilePutObject to write Object types, or coerce FileNumber and RecordNumber to Integer for writing non-Object types. http://go.microsoft.com/fwlink/?linkid=14202

Dikkat

FileSystem.FilePut has been deprecated. Use FilePutObject to write Object types, or coerce FileNumber and RecordNumber to Integer for writing non-Object types.

Dikkat

Use FilePutObject to write Object types, or coerce FileNumber and RecordNumber to Integer for writing non-Object types

Bir değişkenden gelen veriyi disk dosyasına yazar. Bu My özellik, dosya G/Ç işlemlerinde FilePutdaha iyi üretkenlik ve performans sağlar. Daha fazla bilgi için bkz. FileSystem.

public:
 static void FilePut(System::Object ^ FileNumber, System::Object ^ Value, System::Object ^ RecordNumber);
[System.Obsolete("This member has been deprecated. Please use FilePutObject to write Object types, or coerce FileNumber and RecordNumber to Integer for writing non-Object types. http://go.microsoft.com/fwlink/?linkid=14202")]
public static void FilePut (object FileNumber, object Value, object RecordNumber);
[System.Obsolete("FileSystem.FilePut has been deprecated. Use FilePutObject to write Object types, or coerce FileNumber and RecordNumber to Integer for writing non-Object types.")]
public static void FilePut (object FileNumber, object Value, object RecordNumber);
[System.Obsolete("Use FilePutObject to write Object types, or coerce FileNumber and RecordNumber to Integer for writing non-Object types")]
public static void FilePut (object FileNumber, object Value, object RecordNumber = -1);
[System.Obsolete("This member has been deprecated. Please use FilePutObject to write Object types, or coerce FileNumber and RecordNumber to Integer for writing non-Object types. http://go.microsoft.com/fwlink/?linkid=14202")]
public static void FilePut (object FileNumber, object Value, object RecordNumber = -1);
[<System.Obsolete("This member has been deprecated. Please use FilePutObject to write Object types, or coerce FileNumber and RecordNumber to Integer for writing non-Object types. http://go.microsoft.com/fwlink/?linkid=14202")>]
static member FilePut : obj * obj * obj -> unit
[<System.Obsolete("FileSystem.FilePut has been deprecated. Use FilePutObject to write Object types, or coerce FileNumber and RecordNumber to Integer for writing non-Object types.")>]
static member FilePut : obj * obj * obj -> unit
[<System.Obsolete("Use FilePutObject to write Object types, or coerce FileNumber and RecordNumber to Integer for writing non-Object types")>]
static member FilePut : obj * obj * obj -> unit
Public Sub FilePut (FileNumber As Object, Value As Object, RecordNumber As Object)
Public Sub FilePut (FileNumber As Object, Value As Object, Optional RecordNumber As Object = -1)

Parametreler

FileNumber
Object

Gereklidir. Herhangi bir geçerli dosya numarası.

Value
Object

Gereklidir. Diske yazılan veriyi içeren geçerli değişken adı.

RecordNumber
Object

İsteğe bağlı. Yazmanın başladığı kayıt numarası (Random mod dosyaları) veya bayt numarası (Binary mod dosyaları).

Öznitelikler

Özel durumlar

RecordNumber< 1 ve -1'e eşit değildir.

Dosya modu geçersiz.

Örnekler

Bu örnekte, bir dosyaya FilePut veri yazmak için işlevi kullanılır. Yapıya Person ait beş kayıt dosyaya yazılır.

Structure Person
    Public ID As Integer
    Public Name As String
End Structure

Sub WriteData()
    Dim PatientRecord As Person
    Dim recordNumber As Integer
    '    Open file for random access.
    FileOpen(1, "C:\TESTFILE.txt", OpenMode.Binary)
    ' Loop 5 times.
    For recordNumber = 1 To 5
        ' Define ID.
        PatientRecord.ID = recordNumber
        ' Create a string.
        PatientRecord.Name = "Name " & recordNumber
        ' Write record to file.
        FilePut(1, PatientRecord)
    Next recordNumber
    FileClose(1)
End Sub

Açıklamalar

FilePutyalnızca ve Binary modunda Random geçerlidir.

ile FilePut yazılan veriler genellikle kullanılarak FileGetbir dosyadan okunur.

Bir dosyadaki ilk kayıt veya bayt, 1 konumunda, ikinci kayıt veya bayt, 2 konumunda ve benzeri şekildedir. atlarsanızRecordNumber, son veya işlevden sonraki veya son FileGet işlevin işaret ettiği sonraki Seek kayıt veya FilePut bayt yazılır.

bağımsız StringIsFixedLength değişkeni, işlevin dizeleri değişken veya sabit uzunluk olarak yorumlayıp yorumlamayacağını denetler. FilePut bağımsız değişkeni olduğunda Trueuzunluk tanımlayıcısını yazmaz. ile FilePutkullanıyorsanızStringIsFixedLength = True, aynı işlemi ile FileGetyapmanız ve dizenin beklenen uzunlukta başlatıldığından emin olmanız gerekir.

Rastgele Modu

Modda Random açılan dosyalar için aşağıdaki kurallar geçerlidir:

  • Yazılan verilerin uzunluğu işlevin yan tümcesinde RecordLength belirtilen uzunluktan FileOpen küçükse, FilePut sonraki kayıtları kayıt uzunluğu sınırlarına yazar. Bir kaydın bitişi ve sonraki kaydın başlangıç noktası arasındaki boşluk, dosya arabelleğinin varolan içeriğiyle doldurulur. Doldurma verilerinin miktarı kesin olarak belirlenemeyeceğinden, genellikle kayıt uzunluğunun yazılan verilerin uzunluğuyla eşleştirmek iyi bir fikirdir. Yazılan verilerin uzunluğu işlevin yan tümcesinde RecordLength belirtilen uzunluktan FileOpen büyükse bir özel durum oluşturulur.

  • Yazılan değişken bir dizeyse, FilePut dize uzunluğunu içeren iki baytlık bir tanımlayıcı yazar ve ardından değişkenine giden verileri yazar. Bu nedenle, işlevindeki yan tümcesi RecordLength tarafından belirtilen kayıt uzunluğu, dizenin FileOpen gerçek uzunluğundan en az iki bayt büyük olmalıdır.

  • Yazılan değişken sayısal bir tür içeren bir nesneyse, FilePut nesnesini tanımlayan VarType iki bayt yazar ve ardından değişkeni yazar. Örneğin, tamsayı FilePut içeren bir nesne yazarken altı bayt yazar: nesneyi (Integer) olarak VarType(3) tanımlayan iki bayt ve verileri içeren dört bayt. İşlevdeki FileOpen parametresi tarafından RecordLength belirtilen kayıt uzunluğu, değişkeni depolamak için gereken gerçek bayt sayısından en az iki bayt büyük olmalıdır.

  • Yazılan değişken bir dize içeren bir nesneyse, FilePut nesnesini tanımlayan VarType(8) iki baytlık bir tanımlayıcı, dizenin uzunluğunu belirten iki baytlık bir tanımlayıcı yazar ve sonra dize verilerini yazar. İşlevdeki parametresi tarafından RecordLength belirtilen kayıt uzunluğu, dizenin FileOpen gerçek uzunluğundan en az dört bayt büyük olmalıdır. Tanımlayıcısı olmayan bir dize koymak istiyorsanız parametresine StringIsFixedLength geçmeniz True ve içinde okuduğunuz dizenin doğru uzunlukta olması gerekir.

  • Yazılan değişken bir dizi ise, dizi boyutları ve boyut için bir tanımlayıcıyı yazmanız gerekip gerekmediğine dair bir seçeneğiniz vardır. Visual Basic 6.0 ve önceki sürümleri, sabit boyutlu dizi için değil ancak dinamik bir dizi için dosya tanımlayıcısı yazar. Visual Basic 2005'de, tanımlayıcı yazılamıyor varsayılandır. Tanımlayıcıyı yazmak için parametresini ArrayIsDynamic olarak Trueayarlayın. Diziyi yazarken, dizinin okunduğu şekilde eşleştirmelisiniz; tanımlayıcı ile okunacaksa, tanımlayıcıyı yazmalısınız. Tanımlayıcı, her bir derece için dizi derecesi, boyutu ve alt sınırı belirtir. Uzunluğu, boyut sayısının 2 artı 8 katına eşittir: (2 + 8 * NumberOfDimensions). İşlevdeki FileOpen yan tümcesi RecordLength tarafından belirtilen kayıt uzunluğu, dizi verilerini ve dizi tanımlayıcısını yazmak için gereken tüm baytların toplamından büyük veya buna eşit olmalıdır. Örneğin, aşağıdaki dizi bildirimi dizi diske yazıldığı zaman 218 bayt gerektirir.

    Dim MyArray(4, 9) As Integer
    
  • Yazılan değişken başka bir değişken türündeyse (değişken uzunlukta bir dize veya nesne değilse), FilePut yalnızca değişken verilerini yazar. İşlevdeki FileOpen yan tümcesi RecordLength tarafından belirtilen kayıt uzunluğu, yazılan verilerin uzunluğundan büyük veya buna eşit olmalıdır.

  • FilePut öğelerin arasında doldurma olmaması dışında, yapıların öğelerini her biri tek tek yazılmış gibi yazar. Özniteliği, VBFixedString diske yazıldığında dizenin boyutunu göstermek için yapılardaki dize alanlarına uygulanabilir.

    Not

    Özniteliği tarafından VBFixedString belirtilenden daha fazla bayt içeren dize alanları diske yazıldığında kesilir,

İkili Mod

Modda Binary açılan dosyalar için, bazı özel durumlar dışında mod kurallarının Random çoğu uygulanır. Modda Binary açılan dosyalar için aşağıdaki kurallar, mod kurallarından Random farklıdır:

  • RecordLength işlevindeki yan tümcesinin FileOpen hiçbir etkisi yoktur. FilePut tüm değişkenleri bitişik olarak, yani kayıtlar arasında doldurma olmadan diske yazar.

  • Yapıdaki bir dizi dışında herhangi bir dizi için yalnızca FilePut verileri yazar. Hiçbir tanımlayıcı yazılmıyor.

  • FilePut iki baytlık uzunluk tanımlayıcısı olmadan yapıların öğesi olmayan değişken uzunlukta dizeler yazar. Yazılan bayt sayısı dizedeki karakter sayısına eşittir. Örneğin, aşağıdaki ifadeler dosya numarası 1'e 11 bayt yazar:

    Dim hellow As String = "Hello World"
    FilePut(1, hellow)
    
  • işlevini kullanarak bir dosyaya FilePut yazmak için sabit listesinden FileIOPermissionAccess erişim gerekirWrite.

Ayrıca bkz.

Şunlara uygulanır

FilePut(Int32, ValueType, Int64)

Kaynak:
FileSystem.vb
Kaynak:
FileSystem.vb
Kaynak:
FileSystem.vb

Bir değişkenden gelen veriyi disk dosyasına yazar. Bu My özellik, dosya G/Ç işlemlerinde FilePutdaha iyi üretkenlik ve performans sağlar. Daha fazla bilgi için bkz. FileSystem.

public static void FilePut (int FileNumber, ValueType Value, long RecordNumber = -1);
static member FilePut : int * ValueType * int64 -> unit
Public Sub FilePut (FileNumber As Integer, Value As ValueType, Optional RecordNumber As Long = -1)

Parametreler

FileNumber
Int32

Gereklidir. Herhangi bir geçerli dosya numarası.

Value
ValueType

Gereklidir. Diske yazılan veriyi içeren geçerli değişken adı.

RecordNumber
Int64

İsteğe bağlı. Yazmanın başladığı kayıt numarası (Random mod dosyaları) veya bayt numarası (Binary mod dosyaları).

Özel durumlar

RecordNumber< 1 ve -1'e eşit değildir.

Dosya modu geçersiz.

Örnekler

Bu örnekte, bir dosyaya FilePut veri yazmak için işlevi kullanılır. Yapıya Person ait beş kayıt dosyaya yazılır.

Structure Person
    Public ID As Integer
    Public Name As String
End Structure

Sub WriteData()
    Dim PatientRecord As Person
    Dim recordNumber As Integer
    '    Open file for random access.
    FileOpen(1, "C:\TESTFILE.txt", OpenMode.Binary)
    ' Loop 5 times.
    For recordNumber = 1 To 5
        ' Define ID.
        PatientRecord.ID = recordNumber
        ' Create a string.
        PatientRecord.Name = "Name " & recordNumber
        ' Write record to file.
        FilePut(1, PatientRecord)
    Next recordNumber
    FileClose(1)
End Sub

Açıklamalar

FilePutyalnızca ve Binary modunda Random geçerlidir.

ile FilePut yazılan veriler genellikle kullanılarak FileGetbir dosyadan okunur.

Bir dosyadaki ilk kayıt veya bayt, 1 konumunda, ikinci kayıt veya bayt, 2 konumunda ve benzeri şekildedir. atlarsanızRecordNumber, son veya işlevden sonraki veya son FileGet işlevin işaret ettiği sonraki Seek kayıt veya FilePut bayt yazılır.

bağımsız StringIsFixedLength değişkeni, işlevin dizeleri değişken veya sabit uzunluk olarak yorumlayıp yorumlamayacağını denetler. FilePut bağımsız değişkeni olduğunda Trueuzunluk tanımlayıcısını yazmaz. ile FilePutkullanıyorsanızStringIsFixedLength = True, aynı işlemi ile FileGetyapmanız ve dizenin beklenen uzunlukta başlatıldığından emin olmanız gerekir.

Rastgele Modu

Modda Random açılan dosyalar için aşağıdaki kurallar geçerlidir:

  • Yazılan verilerin uzunluğu işlevin yan tümcesindeRecordLength belirtilen uzunluktan FileOpen küçükse, FilePut sonraki kayıtları kayıt uzunluğu sınırlarına yazar. Bir kaydın bitişi ve sonraki kaydın başlangıç noktası arasındaki boşluk, dosya arabelleğinin varolan içeriğiyle doldurulur. Doldurma verilerinin miktarı kesin olarak belirlenemeyeceğinden, genellikle kayıt uzunluğunun yazılan verilerin uzunluğuyla eşleştirmek iyi bir fikirdir. Yazılan verilerin uzunluğu işlevin yan tümcesinde RecordLength belirtilen uzunluktan FileOpen büyükse bir özel durum oluşturulur.

  • Yazılan değişken bir dizeyse, FilePut dize uzunluğunu içeren iki baytlık bir tanımlayıcı yazar ve ardından değişkenine giden verileri yazar. Bu nedenle, işlevindeki yan tümcesi RecordLength tarafından belirtilen kayıt uzunluğu, dizenin FileOpen gerçek uzunluğundan en az iki bayt büyük olmalıdır.

  • Yazılan değişken sayısal bir tür içeren bir nesneyse, FilePut nesnesini tanımlayan VarType iki bayt yazar ve ardından değişkeni yazar. Örneğin, tamsayı FilePut içeren bir nesne yazarken altı bayt yazar: nesneyi (Integer) olarak VarType(3) tanımlayan iki bayt ve verileri içeren dört bayt. İşlevdeki FileOpen parametresi tarafından RecordLength belirtilen kayıt uzunluğu, değişkeni depolamak için gereken gerçek bayt sayısından en az iki bayt büyük olmalıdır.

  • Yazılan değişken bir dize içeren bir nesneyse, FilePut nesnesini tanımlayan VarType(8) iki baytlık bir tanımlayıcı, dizenin uzunluğunu belirten iki baytlık bir tanımlayıcı yazar ve sonra dize verilerini yazar. İşlevdeki parametresi tarafından RecordLength belirtilen kayıt uzunluğu, dizenin FileOpen gerçek uzunluğundan en az dört bayt büyük olmalıdır. Tanımlayıcısı olmayan bir dize koymak istiyorsanız parametresine StringIsFixedLength geçmeniz True ve içinde okuduğunuz dizenin doğru uzunlukta olması gerekir.

  • Yazılan değişken bir dizi ise, dizi boyutları ve boyut için bir tanımlayıcıyı yazmanız gerekip gerekmediğine dair bir seçeneğiniz vardır. Visual Basic 6.0 ve önceki sürümleri, sabit boyutlu dizi için değil ancak dinamik bir dizi için dosya tanımlayıcısı yazar. Visual Basic 2005'de, tanımlayıcı yazılamıyor varsayılandır. Tanımlayıcıyı yazmak için parametresini ArrayIsDynamic olarak Trueayarlayın. Diziyi yazarken, dizinin okunduğu şekilde eşleştirmelisiniz; tanımlayıcı ile okunacaksa, tanımlayıcıyı yazmalısınız. Tanımlayıcı, her bir derece için dizi derecesi, boyutu ve alt sınırı belirtir. Uzunluğu, boyut sayısının 2 artı 8 katına eşittir: (2 + 8 * NumberOfDimensions). İşlevdeki FileOpen yan tümcesi RecordLength tarafından belirtilen kayıt uzunluğu, dizi verilerini ve dizi tanımlayıcısını yazmak için gereken tüm baytların toplamından büyük veya buna eşit olmalıdır. Örneğin, aşağıdaki dizi bildirimi dizi diske yazıldığı zaman 218 bayt gerektirir.

    Dim MyArray(4, 9) As Integer
    
  • Yazılan değişken başka bir değişken türündeyse (değişken uzunlukta bir dize veya nesne değilse), FilePut yalnızca değişken verilerini yazar. İşlevdeki FileOpen yan tümcesi RecordLength tarafından belirtilen kayıt uzunluğu, yazılan verilerin uzunluğundan büyük veya buna eşit olmalıdır.

  • FilePut öğelerin arasında doldurma olmaması dışında, yapıların öğelerini her biri tek tek yazılmış gibi yazar. Özniteliği, VBFixedString diske yazıldığında dizenin boyutunu göstermek için yapılardaki dize alanlarına uygulanabilir.

    Not

    Özniteliği tarafından VBFixedString belirtilenden daha fazla bayt içeren dize alanları diske yazıldığında kesilir,

İkili Mod

Modda Binary açılan dosyalar için, bazı özel durumlar dışında mod kurallarının Random çoğu uygulanır. Modda Binary açılan dosyalar için aşağıdaki kurallar, mod kurallarından Random farklıdır:

  • RecordLength işlevindeki yan tümcesinin FileOpen hiçbir etkisi yoktur. FilePut tüm değişkenleri bitişik olarak, yani kayıtlar arasında doldurma olmadan diske yazar.

  • Yapıdaki bir dizi dışında herhangi bir dizi için yalnızca FilePut verileri yazar. Hiçbir tanımlayıcı yazılmıyor.

  • FilePut iki baytlık uzunluk tanımlayıcısı olmadan yapıların öğesi olmayan değişken uzunlukta dizeler yazar. Yazılan bayt sayısı dizedeki karakter sayısına eşittir. Örneğin, aşağıdaki ifadeler dosya numarası 1'e 11 bayt yazar:

    Dim hellow As String = "Hello World"
    FilePut(1, hellow)
    
  • işlevini kullanarak bir dosyaya FilePut yazmak için sabit listesinden FileIOPermissionAccess erişim gerekirWrite.

Ayrıca bkz.

Şunlara uygulanır

FilePut(Int32, Single, Int64)

Kaynak:
FileSystem.vb
Kaynak:
FileSystem.vb
Kaynak:
FileSystem.vb

Bir değişkenden gelen veriyi disk dosyasına yazar. Bu My özellik, dosya G/Ç işlemlerinde FilePutdaha iyi üretkenlik ve performans sağlar. Daha fazla bilgi için bkz. FileSystem.

public static void FilePut (int FileNumber, float Value, long RecordNumber = -1);
static member FilePut : int * single * int64 -> unit
Public Sub FilePut (FileNumber As Integer, Value As Single, Optional RecordNumber As Long = -1)

Parametreler

FileNumber
Int32

Gereklidir. Herhangi bir geçerli dosya numarası.

Value
Single

Gereklidir. Diske yazılan veriyi içeren geçerli değişken adı.

RecordNumber
Int64

İsteğe bağlı. Yazmanın başladığı kayıt numarası (Random mod dosyaları) veya bayt numarası (Binary mod dosyaları).

Özel durumlar

RecordNumber< 1 ve -1'e eşit değildir.

Dosya modu geçersiz.

Örnekler

Bu örnekte, bir dosyaya FilePut veri yazmak için işlevi kullanılır. Yapıya Person ait beş kayıt dosyaya yazılır.

Structure Person
    Public ID As Integer
    Public Name As String
End Structure

Sub WriteData()
    Dim PatientRecord As Person
    Dim recordNumber As Integer
    '    Open file for random access.
    FileOpen(1, "C:\TESTFILE.txt", OpenMode.Binary)
    ' Loop 5 times.
    For recordNumber = 1 To 5
        ' Define ID.
        PatientRecord.ID = recordNumber
        ' Create a string.
        PatientRecord.Name = "Name " & recordNumber
        ' Write record to file.
        FilePut(1, PatientRecord)
    Next recordNumber
    FileClose(1)
End Sub

Açıklamalar

FilePutyalnızca ve Binary modunda Random geçerlidir.

ile FilePut yazılan veriler genellikle kullanılarak FileGetbir dosyadan okunur.

Bir dosyadaki ilk kayıt veya bayt, 1 konumunda, ikinci kayıt veya bayt, 2 konumunda ve benzeri şekildedir. atlarsanızRecordNumber, son veya işlevden sonraki veya son FileGet işlevin işaret ettiği sonraki Seek kayıt veya FilePut bayt yazılır.

bağımsız StringIsFixedLength değişkeni, işlevin dizeleri değişken veya sabit uzunluk olarak yorumlayıp yorumlamayacağını denetler. FilePut bağımsız değişkeni olduğunda Trueuzunluk tanımlayıcısını yazmaz. ile FilePutkullanıyorsanızStringIsFixedLength = True, aynı işlemi ile FileGetyapmanız ve dizenin beklenen uzunlukta başlatıldığından emin olmanız gerekir.

Rastgele Modu

Modda Random açılan dosyalar için aşağıdaki kurallar geçerlidir:

  • Yazılan verilerin uzunluğu işlevin yan tümcesinde RecordLength belirtilen uzunluktan FileOpen küçükse, FilePut sonraki kayıtları kayıt uzunluğu sınırlarına yazar. Bir kaydın bitişi ve sonraki kaydın başlangıç noktası arasındaki boşluk, dosya arabelleğinin varolan içeriğiyle doldurulur. Doldurma verilerinin miktarı kesin olarak belirlenemeyeceğinden, genellikle kayıt uzunluğunun yazılan verilerin uzunluğuyla eşleştirmek iyi bir fikirdir. Yazılan verilerin uzunluğu işlevin yan tümcesinde RecordLength belirtilen uzunluktan FileOpen büyükse bir özel durum oluşturulur.

  • Yazılan değişken bir dizeyse, FilePut dize uzunluğunu içeren iki baytlık bir tanımlayıcı yazar ve ardından değişkenine giden verileri yazar. Bu nedenle, işlevindeki yan tümcesi RecordLength tarafından belirtilen kayıt uzunluğu, dizenin FileOpen gerçek uzunluğundan en az iki bayt büyük olmalıdır.

  • Yazılan değişken sayısal bir tür içeren bir nesneyse, FilePut nesnesini tanımlayan VarType iki bayt yazar ve ardından değişkeni yazar. Örneğin, tamsayı FilePut içeren bir nesne yazarken altı bayt yazar: nesneyi (Integer) olarak VarType(3) tanımlayan iki bayt ve verileri içeren dört bayt. İşlevdeki FileOpen parametresi tarafından RecordLength belirtilen kayıt uzunluğu, değişkeni depolamak için gereken gerçek bayt sayısından en az iki bayt büyük olmalıdır.

  • Yazılan değişken bir dize içeren bir nesneyse, FilePut nesnesini tanımlayan VarType(8) iki baytlık bir tanımlayıcı, dizenin uzunluğunu belirten iki baytlık bir tanımlayıcı yazar ve sonra dize verilerini yazar. İşlevdeki parametresi tarafından RecordLength belirtilen kayıt uzunluğu, dizenin FileOpen gerçek uzunluğundan en az dört bayt büyük olmalıdır. Tanımlayıcısı olmayan bir dize koymak istiyorsanız parametresine StringIsFixedLength geçmeniz True ve içinde okuduğunuz dizenin doğru uzunlukta olması gerekir.

  • Yazılan değişken bir dizi ise, dizi boyutları ve boyut için bir tanımlayıcıyı yazmanız gerekip gerekmediğine dair bir seçeneğiniz vardır. Visual Basic 6.0 ve önceki sürümleri, sabit boyutlu dizi için değil ancak dinamik bir dizi için dosya tanımlayıcısı yazar. Visual Basic 2005'de, tanımlayıcı yazılamıyor varsayılandır. Tanımlayıcıyı yazmak için parametresini ArrayIsDynamic olarak Trueayarlayın. Diziyi yazarken, dizinin okunduğu şekilde eşleştirmelisiniz; tanımlayıcı ile okunacaksa, tanımlayıcıyı yazmalısınız. Tanımlayıcı, her bir derece için dizi derecesi, boyutu ve alt sınırı belirtir. Uzunluğu, boyut sayısının 2 artı 8 katına eşittir: (2 + 8 * NumberOfDimensions). İşlevdeki FileOpen yan tümcesi RecordLength tarafından belirtilen kayıt uzunluğu, dizi verilerini ve dizi tanımlayıcısını yazmak için gereken tüm baytların toplamından büyük veya buna eşit olmalıdır. Örneğin, aşağıdaki dizi bildirimi dizi diske yazıldığı zaman 218 bayt gerektirir.

    Dim MyArray(4, 9) As Integer
    
  • Yazılan değişken başka bir değişken türündeyse (değişken uzunlukta bir dize veya nesne değilse), FilePut yalnızca değişken verilerini yazar. İşlevdeki FileOpen yan tümcesi RecordLength tarafından belirtilen kayıt uzunluğu, yazılan verilerin uzunluğundan büyük veya buna eşit olmalıdır.

  • FilePut öğelerin arasında doldurma olmaması dışında, yapıların öğelerini her biri tek tek yazılmış gibi yazar. Özniteliği, VBFixedString diske yazıldığında dizenin boyutunu göstermek için yapılardaki dize alanlarına uygulanabilir.

    Not

    Özniteliği tarafından VBFixedString belirtilenden daha fazla bayt içeren dize alanları diske yazıldığında kesilir,

İkili Mod

Modda Binary açılan dosyalar için, bazı özel durumlar dışında mod kurallarının Random çoğu uygulanır. Modda Binary açılan dosyalar için aşağıdaki kurallar, mod kurallarından Random farklıdır:

  • RecordLength işlevindeki yan tümcesinin FileOpen hiçbir etkisi yoktur. FilePut tüm değişkenleri bitişik olarak, yani kayıtlar arasında doldurma olmadan diske yazar.

  • Yapıdaki bir dizi dışında herhangi bir dizi için yalnızca FilePut verileri yazar. Hiçbir tanımlayıcı yazılmıyor.

  • FilePut iki baytlık uzunluk tanımlayıcısı olmadan yapıların öğesi olmayan değişken uzunlukta dizeler yazar. Yazılan bayt sayısı dizedeki karakter sayısına eşittir. Örneğin, aşağıdaki ifadeler dosya numarası 1'e 11 bayt yazar:

    Dim hellow As String = "Hello World"
    FilePut(1, hellow)
    
  • işlevini kullanarak bir dosyaya FilePut yazmak için sabit listesinden FileIOPermissionAccess erişim gerekirWrite.

Ayrıca bkz.

Şunlara uygulanır

FilePut(Int32, Int32, Int64)

Kaynak:
FileSystem.vb
Kaynak:
FileSystem.vb
Kaynak:
FileSystem.vb

Bir değişkenden gelen veriyi disk dosyasına yazar. Bu My özellik, dosya G/Ç işlemlerinde FilePutdaha iyi üretkenlik ve performans sağlar. Daha fazla bilgi için bkz. FileSystem.

public static void FilePut (int FileNumber, int Value, long RecordNumber = -1);
static member FilePut : int * int * int64 -> unit
Public Sub FilePut (FileNumber As Integer, Value As Integer, Optional RecordNumber As Long = -1)

Parametreler

FileNumber
Int32

Gereklidir. Herhangi bir geçerli dosya numarası.

Value
Int32

Gereklidir. Diske yazılan veriyi içeren geçerli değişken adı.

RecordNumber
Int64

İsteğe bağlı. Yazmanın başladığı kayıt numarası (Random mod dosyaları) veya bayt numarası (Binary mod dosyaları).

Özel durumlar

RecordNumber< 1 ve -1'e eşit değildir.

Dosya modu geçersiz.

Örnekler

Bu örnekte, bir dosyaya veri yazmak için işlevi kullanılır FilePut . Yapıya Person ait beş kayıt dosyaya yazılır.

Structure Person
    Public ID As Integer
    Public Name As String
End Structure

Sub WriteData()
    Dim PatientRecord As Person
    Dim recordNumber As Integer
    '    Open file for random access.
    FileOpen(1, "C:\TESTFILE.txt", OpenMode.Binary)
    ' Loop 5 times.
    For recordNumber = 1 To 5
        ' Define ID.
        PatientRecord.ID = recordNumber
        ' Create a string.
        PatientRecord.Name = "Name " & recordNumber
        ' Write record to file.
        FilePut(1, PatientRecord)
    Next recordNumber
    FileClose(1)
End Sub

Açıklamalar

FilePutyalnızca ve Binary modunda Random geçerlidir.

ile FilePut yazılan veriler genellikle kullanılarak FileGetbir dosyadan okunur.

Bir dosyadaki ilk kayıt veya bayt, 1 konumunda, ikinci kayıt veya bayt, 2 konumunda ve benzeri şekildedir. atlarsanızRecordNumber, son veya işlevden sonraki veya son FileGet işlev tarafından işaret edilen sonraki Seek kayıt veya FilePut bayt yazılır.

bağımsız değişkeni, StringIsFixedLength işlevin dizeleri değişken veya sabit uzunluk olarak yorumlayıp yorumlamayacağını denetler. FilePut bağımsız değişkeni olduğunda Trueuzunluk tanımlayıcısını yazmaz. ile FilePutkullanıyorsanızStringIsFixedLength = True, ile aynı FileGetişlemi yapmanız ve dizenin beklenen uzunlukta başlatıldığından emin olmanız gerekir.

Rastgele Modu

Modda Random açılan dosyalar için aşağıdaki kurallar geçerlidir:

  • Yazılan verilerin uzunluğu işlevin yan tümcesinde RecordLength belirtilen uzunluktan FileOpen küçükse, FilePut sonraki kayıtları kayıt uzunluğu sınırlarına yazar. Bir kaydın bitişi ve sonraki kaydın başlangıç noktası arasındaki boşluk, dosya arabelleğinin varolan içeriğiyle doldurulur. Doldurma verilerinin miktarı kesin olarak belirlenemeyeceğinden, genellikle kayıt uzunluğunun yazılan verilerin uzunluğuyla eşleştirmek iyi bir fikirdir. Yazılan verilerin uzunluğu işlevin yan tümcesinde RecordLength belirtilen uzunluktan FileOpen büyükse, bir özel durum oluşturulur.

  • Yazılan değişken bir dizeyse, FilePut dize uzunluğunu içeren iki baytlık bir tanımlayıcı yazar ve ardından değişkene giden verileri yazar. Bu nedenle, işlevdeki yan tümcesi RecordLength tarafından belirtilen kayıt uzunluğu dizenin FileOpen gerçek uzunluğundan en az iki bayt büyük olmalıdır.

  • Yazılan değişken sayısal bir tür içeren bir nesneyse, FilePut nesnesini tanımlayan VarType iki bayt yazar ve ardından değişkeni yazar. Örneğin, tamsayı FilePut içeren bir nesne yazarken altı bayt yazar: nesneyi (Integer) olarak VarType(3) tanımlayan iki bayt ve verileri içeren dört bayt. İşlevdeki FileOpen parametresi tarafından RecordLength belirtilen kayıt uzunluğu, değişkeni depolamak için gereken gerçek bayt sayısından en az iki bayt büyük olmalıdır.

  • Yazılan değişken bir dize içeren bir nesneyse, FilePut nesnesini tanımlayan VarType(8) iki baytlık bir tanımlayıcı, dizenin uzunluğunu belirten iki baytlık bir tanımlayıcı yazar ve sonra dize verilerini yazar. İşlevdeki parametresi tarafından belirtilen kayıt uzunluğu, dizenin RecordLengthFileOpen gerçek uzunluğundan en az dört bayt büyük olmalıdır. Tanımlayıcısı olmayan bir dize koymak istiyorsanız parametresine StringIsFixedLength geçmeniz True ve içinde okuduğunuz dizenin doğru uzunlukta olması gerekir.

  • Yazılan değişken bir dizi ise, dizi boyutları ve boyut için bir tanımlayıcıyı yazmanız gerekip gerekmediğine dair bir seçeneğiniz vardır. Visual Basic 6.0 ve önceki sürümleri, sabit boyutlu dizi için değil ancak dinamik bir dizi için dosya tanımlayıcısı yazar. Visual Basic 2005'de, tanımlayıcı yazılamıyor varsayılandır. Tanımlayıcıyı yazmak için parametresini ArrayIsDynamic olarak Trueayarlayın. Diziyi yazarken, dizinin okunduğu şekilde eşleştirmelisiniz; tanımlayıcı ile okunacaksa, tanımlayıcıyı yazmalısınız. Tanımlayıcı, her bir derece için dizi derecesi, boyutu ve alt sınırı belirtir. Uzunluğu, boyut sayısının 2 artı 8 katına eşittir: (2 + 8 * NumberOfDimensions). İşlevdeki FileOpen yan tümcesi RecordLength tarafından belirtilen kayıt uzunluğu, dizi verilerini ve dizi tanımlayıcısını yazmak için gereken tüm baytların toplamından büyük veya buna eşit olmalıdır. Örneğin, aşağıdaki dizi bildirimi dizi diske yazıldığı zaman 218 bayt gerektirir.

    Dim MyArray(4, 9) As Integer
    
  • Yazılan değişken başka bir değişken türüyse (değişken uzunluğunda bir dize veya nesne değil), FilePut yalnızca değişken verilerini yazar. İşlevdeki FileOpen yan tümcesi RecordLength tarafından belirtilen kayıt uzunluğu, yazılan verilerin uzunluğundan büyük veya buna eşit olmalıdır.

  • FilePut her biri ayrı ayrı yazılmış gibi yapı öğelerini yazar, ancak öğeler arasında doldurma yoktur. Öznitelik, VBFixedString diske yazıldığında dizenin boyutunu göstermek için yapılardaki dize alanlarına uygulanabilir.

    Not

    Özniteliği tarafından VBFixedString belirtilenden daha fazla bayt içeren dize alanları diske yazıldığında kesilir,

İkili Mod

Modda Binary açılan dosyalar için, bazı özel durumlar dışında mod kurallarının Random çoğu uygulanır. Modda açılan dosyalar için aşağıdaki kurallar, Binary mod kurallarından Random farklıdır:

  • RecordLength İşlevdeki yan tümcesinin FileOpen hiçbir etkisi yoktur. FilePut tüm değişkenleri bitişik olarak, yani kayıtlar arasında doldurma olmadan diske yazar.

  • Yapıdaki FilePut bir dizi dışında herhangi bir dizi için yalnızca verileri yazar. Hiçbir tanımlayıcı yazılmıyor.

  • FilePut iki baytlık uzunluk tanımlayıcısı olmadan yapıların öğeleri olmayan değişken uzunlukta dizeler yazar. Yazılan bayt sayısı dizedeki karakter sayısına eşittir. Örneğin, aşağıdaki ifadeler dosya numarası 1'e 11 bayt yazar:

    Dim hellow As String = "Hello World"
    FilePut(1, hellow)
    
  • işlevini kullanarak bir dosyaya FilePut yazmak için sabit listesinden FileIOPermissionAccess erişim gerekirWrite.

Ayrıca bkz.

Şunlara uygulanır

FilePut(Int32, Array, Int64, Boolean, Boolean)

Kaynak:
FileSystem.vb
Kaynak:
FileSystem.vb
Kaynak:
FileSystem.vb

Bir değişkenden gelen veriyi disk dosyasına yazar. Bu My özellik, dosya G/Ç işlemlerinde FilePutdaha iyi üretkenlik ve performans sağlar. Daha fazla bilgi için bkz. FileSystem.

public static void FilePut (int FileNumber, Array Value, long RecordNumber = -1, bool ArrayIsDynamic = false, bool StringIsFixedLength = false);
static member FilePut : int * Array * int64 * bool * bool -> unit
Public Sub FilePut (FileNumber As Integer, Value As Array, Optional RecordNumber As Long = -1, Optional ArrayIsDynamic As Boolean = false, Optional StringIsFixedLength As Boolean = false)

Parametreler

FileNumber
Int32

Gereklidir. Herhangi bir geçerli dosya numarası.

Value
Array

Gereklidir. Diske yazılan veriyi içeren geçerli değişken adı.

RecordNumber
Int64

İsteğe bağlı. Yazmanın başladığı kayıt numarası (Random mod dosyaları) veya bayt numarası (Binary mod dosyaları).

ArrayIsDynamic
Boolean

İsteğe bağlı. Yalnızca dizi yazarken geçerlidir. Dizinin dinamik olarak kabul edilip edilmeyeceğini ve uzunluğu açıklayan dize için bir dizi tanımlayıcısı yazıp yazmayacağını belirtir.

StringIsFixedLength
Boolean

İsteğe bağlı. Yalnızca dize yazarken geçerlidir. Dosyaya dize için iki baytlık dize uzunluğu tanımlayıcısının yazılıp yazılmayacağını belirtir. Varsayılan değer: False.

Özel durumlar

RecordNumber< 1 ve -1'e eşit değildir.

Dosya modu geçersiz.

Örnekler

Bu örnekte, bir dosyaya veri yazmak için işlevi kullanılır FilePut . Yapıya Person ait beş kayıt dosyaya yazılır.

Structure Person
    Public ID As Integer
    Public Name As String
End Structure

Sub WriteData()
    Dim PatientRecord As Person
    Dim recordNumber As Integer
    '    Open file for random access.
    FileOpen(1, "C:\TESTFILE.txt", OpenMode.Binary)
    ' Loop 5 times.
    For recordNumber = 1 To 5
        ' Define ID.
        PatientRecord.ID = recordNumber
        ' Create a string.
        PatientRecord.Name = "Name " & recordNumber
        ' Write record to file.
        FilePut(1, PatientRecord)
    Next recordNumber
    FileClose(1)
End Sub

Açıklamalar

FilePutyalnızca ve Binary modunda Random geçerlidir.

ile FilePut yazılan veriler genellikle kullanılarak FileGetbir dosyadan okunur.

Bir dosyadaki ilk kayıt veya bayt, 1 konumunda, ikinci kayıt veya bayt, 2 konumunda ve benzeri şekildedir. atlarsanızRecordNumber, son veya işlevden sonraki veya son FileGet işlev tarafından işaret edilen sonraki Seek kayıt veya FilePut bayt yazılır.

bağımsız değişkeni, StringIsFixedLength işlevin dizeleri değişken veya sabit uzunluk olarak yorumlayıp yorumlamayacağını denetler. FilePut bağımsız değişkeni olduğunda Trueuzunluk tanımlayıcısını yazmaz. ile FilePutkullanıyorsanızStringIsFixedLength = True, ile aynı FileGetişlemi yapmanız ve dizenin beklenen uzunlukta başlatıldığından emin olmanız gerekir.

Rastgele Modu

Modda Random açılan dosyalar için aşağıdaki kurallar geçerlidir:

  • Yazılan verilerin uzunluğu işlevin yan tümcesinde RecordLength belirtilen uzunluktan FileOpen küçükse, FilePut sonraki kayıtları kayıt uzunluğu sınırlarına yazar. Bir kaydın bitişi ve sonraki kaydın başlangıç noktası arasındaki boşluk, dosya arabelleğinin varolan içeriğiyle doldurulur. Doldurma verilerinin miktarı kesin olarak belirlenemeyeceğinden, genellikle kayıt uzunluğunun yazılan verilerin uzunluğuyla eşleştirmek iyi bir fikirdir. Yazılan verilerin uzunluğu işlevin yan tümcesinde RecordLength belirtilen uzunluktan FileOpen büyükse, bir özel durum oluşturulur.

  • Yazılan değişken bir dizeyse, FilePut dize uzunluğunu içeren iki baytlık bir tanımlayıcı yazar ve ardından değişkene giden verileri yazar. Bu nedenle, işlevdeki yan tümcesi RecordLength tarafından belirtilen kayıt uzunluğu dizenin FileOpen gerçek uzunluğundan en az iki bayt büyük olmalıdır.

  • Yazılan değişken sayısal bir tür içeren bir nesneyse, FilePut nesnesini tanımlayan VarType iki bayt yazar ve ardından değişkeni yazar. Örneğin, tamsayı FilePut içeren bir nesne yazarken altı bayt yazar: nesneyi (Integer) olarak VarType(3) tanımlayan iki bayt ve verileri içeren dört bayt. İşlevdeki FileOpen parametresi tarafından RecordLength belirtilen kayıt uzunluğu, değişkeni depolamak için gereken gerçek bayt sayısından en az iki bayt büyük olmalıdır.

  • Yazılan değişken bir dize içeren bir nesneyse, FilePut nesnesini tanımlayan VarType(8) iki baytlık bir tanımlayıcı, dizenin uzunluğunu belirten iki baytlık bir tanımlayıcı yazar ve sonra dize verilerini yazar. İşlevdeki parametresi tarafından belirtilen kayıt uzunluğu, dizenin RecordLengthFileOpen gerçek uzunluğundan en az dört bayt büyük olmalıdır. Tanımlayıcısı olmayan bir dize koymak istiyorsanız parametresine StringIsFixedLength geçmeniz True ve içinde okuduğunuz dizenin doğru uzunlukta olması gerekir.

  • Yazılan değişken bir dizi ise, dizi boyutları ve boyut için bir tanımlayıcıyı yazmanız gerekip gerekmediğine dair bir seçeneğiniz vardır. Visual Basic 6.0 ve önceki sürümleri, sabit boyutlu dizi için değil ancak dinamik bir dizi için dosya tanımlayıcısı yazar. Visual Basic 2005'de, tanımlayıcı yazılamıyor varsayılandır. Tanımlayıcıyı yazmak için parametresini ArrayIsDynamic olarak Trueayarlayın. Diziyi yazarken, dizinin okunduğu şekilde eşleştirmelisiniz; tanımlayıcı ile okunacaksa, tanımlayıcıyı yazmalısınız. Tanımlayıcı, her bir derece için dizi derecesi, boyutu ve alt sınırı belirtir. Uzunluğu, boyut sayısının 2 artı 8 katına eşittir: (2 + 8 * NumberOfDimensions). İşlevdeki FileOpen yan tümcesi RecordLength tarafından belirtilen kayıt uzunluğu, dizi verilerini ve dizi tanımlayıcısını yazmak için gereken tüm baytların toplamından büyük veya buna eşit olmalıdır. Örneğin, aşağıdaki dizi bildirimi dizi diske yazıldığı zaman 218 bayt gerektirir.

    Dim MyArray(4, 9) As Integer
    
  • Yazılan değişken başka bir değişken türüyse (değişken uzunluğunda bir dize veya nesne değil), FilePut yalnızca değişken verilerini yazar. İşlevdeki FileOpen yan tümcesi RecordLength tarafından belirtilen kayıt uzunluğu, yazılan verilerin uzunluğundan büyük veya buna eşit olmalıdır.

  • FilePut her biri ayrı ayrı yazılmış gibi yapı öğelerini yazar, ancak öğeler arasında doldurma yoktur. Öznitelik, VBFixedString diske yazıldığında dizenin boyutunu göstermek için yapılardaki dize alanlarına uygulanabilir.

    Not

    Özniteliği tarafından VBFixedString belirtilenden daha fazla bayt içeren dize alanları diske yazıldığında kesilir,

İkili Mod

Modda Binary açılan dosyalar için, bazı özel durumlar dışında mod kurallarının Random çoğu uygulanır. Modda açılan dosyalar için aşağıdaki kurallar, Binary mod kurallarından Random farklıdır:

  • RecordLength İşlevdeki yan tümcesinin FileOpen hiçbir etkisi yoktur. FilePut tüm değişkenleri bitişik olarak, yani kayıtlar arasında doldurma olmadan diske yazar.

  • Yapıdaki FilePut bir dizi dışında herhangi bir dizi için yalnızca verileri yazar. Hiçbir tanımlayıcı yazılmıyor.

  • FilePut iki baytlık uzunluk tanımlayıcısı olmadan yapıların öğeleri olmayan değişken uzunlukta dizeler yazar. Yazılan bayt sayısı dizedeki karakter sayısına eşittir. Örneğin, aşağıdaki ifadeler dosya numarası 1'e 11 bayt yazar:

    Dim hellow As String = "Hello World"
    FilePut(1, hellow)
    
  • işlevini kullanarak bir dosyaya FilePut yazmak için sabit listesinden FileIOPermissionAccess erişim gerekirWrite.

Ayrıca bkz.

Şunlara uygulanır

FilePut(Int32, Double, Int64)

Kaynak:
FileSystem.vb
Kaynak:
FileSystem.vb
Kaynak:
FileSystem.vb

Bir değişkenden gelen veriyi disk dosyasına yazar. Bu My özellik, dosya G/Ç işlemlerinde FilePutdaha iyi üretkenlik ve performans sağlar. Daha fazla bilgi için bkz. FileSystem.

public static void FilePut (int FileNumber, double Value, long RecordNumber = -1);
static member FilePut : int * double * int64 -> unit
Public Sub FilePut (FileNumber As Integer, Value As Double, Optional RecordNumber As Long = -1)

Parametreler

FileNumber
Int32

Gereklidir. Herhangi bir geçerli dosya numarası.

Value
Double

Gereklidir. Diske yazılan veriyi içeren geçerli değişken adı.

RecordNumber
Int64

İsteğe bağlı. Yazmanın başladığı kayıt numarası (Random mod dosyaları) veya bayt numarası (Binary mod dosyaları).

Özel durumlar

RecordNumber< 1 ve -1'e eşit değildir.

Dosya modu geçersiz.

Örnekler

Bu örnekte, bir dosyaya veri yazmak için işlevi kullanılır FilePut . Yapıya Person ait beş kayıt dosyaya yazılır.

Structure Person
    Public ID As Integer
    Public Name As String
End Structure

Sub WriteData()
    Dim PatientRecord As Person
    Dim recordNumber As Integer
    '    Open file for random access.
    FileOpen(1, "C:\TESTFILE.txt", OpenMode.Binary)
    ' Loop 5 times.
    For recordNumber = 1 To 5
        ' Define ID.
        PatientRecord.ID = recordNumber
        ' Create a string.
        PatientRecord.Name = "Name " & recordNumber
        ' Write record to file.
        FilePut(1, PatientRecord)
    Next recordNumber
    FileClose(1)
End Sub

Açıklamalar

FilePutyalnızca ve Binary modunda Random geçerlidir.

ile FilePut yazılan veriler genellikle kullanılarak FileGetbir dosyadan okunur.

Bir dosyadaki ilk kayıt veya bayt, 1 konumunda, ikinci kayıt veya bayt, 2 konumunda ve benzeri şekildedir. atlarsanızRecordNumber, son veya işlevden sonraki veya son FileGet işlev tarafından işaret edilen sonraki Seek kayıt veya FilePut bayt yazılır.

bağımsız değişkeni, StringIsFixedLength işlevin dizeleri değişken veya sabit uzunluk olarak yorumlayıp yorumlamayacağını denetler. FilePut bağımsız değişkeni olduğunda Trueuzunluk tanımlayıcısını yazmaz. ile FilePutkullanıyorsanızStringIsFixedLength = True, ile aynı FileGetişlemi yapmanız ve dizenin beklenen uzunlukta başlatıldığından emin olmanız gerekir.

Rastgele Modu

Modda Random açılan dosyalar için aşağıdaki kurallar geçerlidir:

  • Yazılan verilerin uzunluğu işlevin yan tümcesinde RecordLength belirtilen uzunluktan FileOpen küçükse, FilePut sonraki kayıtları kayıt uzunluğu sınırlarına yazar. Bir kaydın bitişi ve sonraki kaydın başlangıç noktası arasındaki boşluk, dosya arabelleğinin varolan içeriğiyle doldurulur. Doldurma verilerinin miktarı kesin olarak belirlenemeyeceğinden, genellikle kayıt uzunluğunun yazılan verilerin uzunluğuyla eşleştirmek iyi bir fikirdir. Yazılan verilerin uzunluğu işlevin yan tümcesinde RecordLength belirtilen uzunluktan FileOpen büyükse, bir özel durum oluşturulur.

  • Yazılan değişken bir dizeyse, FilePut dize uzunluğunu içeren iki baytlık bir tanımlayıcı yazar ve ardından değişkene giden verileri yazar. Bu nedenle, işlevdeki yan tümcesi RecordLength tarafından belirtilen kayıt uzunluğu dizenin FileOpen gerçek uzunluğundan en az iki bayt büyük olmalıdır.

  • Yazılan değişken sayısal bir tür içeren bir nesneyse, FilePut nesnesini tanımlayan VarType iki bayt yazar ve ardından değişkeni yazar. Örneğin, tamsayı FilePut içeren bir nesne yazarken altı bayt yazar: nesneyi (Integer) olarak VarType(3) tanımlayan iki bayt ve verileri içeren dört bayt. İşlevdeki FileOpen parametresi tarafından RecordLength belirtilen kayıt uzunluğu, değişkeni depolamak için gereken gerçek bayt sayısından en az iki bayt büyük olmalıdır.

  • Yazılan değişken bir dize içeren bir nesneyse, FilePut nesnesini tanımlayan VarType(8) iki baytlık bir tanımlayıcı, dizenin uzunluğunu belirten iki baytlık bir tanımlayıcı yazar ve sonra dize verilerini yazar. İşlevdeki parametresi tarafından belirtilen kayıt uzunluğu, dizenin RecordLengthFileOpen gerçek uzunluğundan en az dört bayt büyük olmalıdır. Tanımlayıcısı olmayan bir dize koymak istiyorsanız parametresine StringIsFixedLength geçmeniz True ve içinde okuduğunuz dizenin doğru uzunlukta olması gerekir.

  • Yazılan değişken bir dizi ise, dizi boyutları ve boyut için bir tanımlayıcıyı yazmanız gerekip gerekmediğine dair bir seçeneğiniz vardır. Visual Basic 6.0 ve önceki sürümleri, sabit boyutlu dizi için değil ancak dinamik bir dizi için dosya tanımlayıcısı yazar. Visual Basic 2005'de, tanımlayıcı yazılamıyor varsayılandır. Tanımlayıcıyı yazmak için parametresini ArrayIsDynamic olarak Trueayarlayın. Diziyi yazarken, dizinin okunduğu şekilde eşleştirmelisiniz; tanımlayıcı ile okunacaksa, tanımlayıcıyı yazmalısınız. Tanımlayıcı, her bir derece için dizi derecesi, boyutu ve alt sınırı belirtir. Uzunluğu, boyut sayısının 2 artı 8 katına eşittir: (2 + 8 * NumberOfDimensions). İşlevdeki FileOpen yan tümcesi RecordLength tarafından belirtilen kayıt uzunluğu, dizi verilerini ve dizi tanımlayıcısını yazmak için gereken tüm baytların toplamından büyük veya buna eşit olmalıdır. Örneğin, aşağıdaki dizi bildirimi dizi diske yazıldığı zaman 218 bayt gerektirir.

    Dim MyArray(4, 9) As Integer
    
  • Yazılan değişken başka bir değişken türüyse (değişken uzunluğunda bir dize veya nesne değil), FilePut yalnızca değişken verilerini yazar. İşlevdeki FileOpen yan tümcesi RecordLength tarafından belirtilen kayıt uzunluğu, yazılan verilerin uzunluğundan büyük veya buna eşit olmalıdır.

  • FilePut her biri ayrı ayrı yazılmış gibi yapı öğelerini yazar, ancak öğeler arasında doldurma yoktur. Öznitelik, VBFixedString diske yazıldığında dizenin boyutunu göstermek için yapılardaki dize alanlarına uygulanabilir.

    Not

    Özniteliği tarafından VBFixedString belirtilenden daha fazla bayt içeren dize alanları diske yazıldığında kesilir,

İkili Mod

Modda Binary açılan dosyalar için, bazı özel durumlar dışında mod kurallarının Random çoğu uygulanır. Modda açılan dosyalar için aşağıdaki kurallar, Binary mod kurallarından Random farklıdır:

  • RecordLength İşlevdeki yan tümcesinin FileOpen hiçbir etkisi yoktur. FilePut tüm değişkenleri bitişik olarak, yani kayıtlar arasında doldurma olmadan diske yazar.

  • Yapıdaki FilePut bir dizi dışında herhangi bir dizi için yalnızca verileri yazar. Hiçbir tanımlayıcı yazılmıyor.

  • FilePut iki baytlık uzunluk tanımlayıcısı olmadan yapıların öğeleri olmayan değişken uzunlukta dizeler yazar. Yazılan bayt sayısı dizedeki karakter sayısına eşittir. Örneğin, aşağıdaki ifadeler dosya numarası 1'e 11 bayt yazar:

    Dim hellow As String = "Hello World"
    FilePut(1, hellow)
    
  • işlevini kullanarak bir dosyaya FilePut yazmak için sabit listesinden FileIOPermissionAccess erişim gerekirWrite.

Ayrıca bkz.

Şunlara uygulanır

FilePut(Int32, Decimal, Int64)

Kaynak:
FileSystem.vb
Kaynak:
FileSystem.vb
Kaynak:
FileSystem.vb

Bir değişkenden gelen veriyi disk dosyasına yazar. Bu My özellik, dosya G/Ç işlemlerinde FilePutdaha iyi üretkenlik ve performans sağlar. Daha fazla bilgi için bkz. FileSystem.

public static void FilePut (int FileNumber, decimal Value, long RecordNumber = -1);
static member FilePut : int * decimal * int64 -> unit
Public Sub FilePut (FileNumber As Integer, Value As Decimal, Optional RecordNumber As Long = -1)

Parametreler

FileNumber
Int32

Gereklidir. Herhangi bir geçerli dosya numarası.

Value
Decimal

Gereklidir. Diske yazılan veriyi içeren geçerli değişken adı.

RecordNumber
Int64

İsteğe bağlı. Yazmanın başladığı kayıt numarası (Random mod dosyaları) veya bayt numarası (Binary mod dosyaları).

Özel durumlar

RecordNumber< 1 ve -1'e eşit değildir.

Dosya modu geçersiz.

Örnekler

Bu örnekte, bir dosyaya veri yazmak için işlevi kullanılır FilePut . Yapıya Person ait beş kayıt dosyaya yazılır.

Structure Person
    Public ID As Integer
    Public Name As String
End Structure

Sub WriteData()
    Dim PatientRecord As Person
    Dim recordNumber As Integer
    '    Open file for random access.
    FileOpen(1, "C:\TESTFILE.txt", OpenMode.Binary)
    ' Loop 5 times.
    For recordNumber = 1 To 5
        ' Define ID.
        PatientRecord.ID = recordNumber
        ' Create a string.
        PatientRecord.Name = "Name " & recordNumber
        ' Write record to file.
        FilePut(1, PatientRecord)
    Next recordNumber
    FileClose(1)
End Sub

Açıklamalar

FilePutyalnızca ve Binary modunda Random geçerlidir.

ile FilePut yazılan veriler genellikle kullanılarak FileGetbir dosyadan okunur.

Bir dosyadaki ilk kayıt veya bayt, 1 konumunda, ikinci kayıt veya bayt, 2 konumunda ve benzeri şekildedir. atlarsanızRecordNumber, son veya işlevden sonraki veya son FileGet işlevin işaret ettiği sonraki Seek kayıt veya FilePut bayt yazılır.

bağımsız StringIsFixedLength değişkeni, işlevin dizeleri değişken veya sabit uzunluk olarak yorumlayıp yorumlamayacağını denetler. FilePut bağımsız değişkeni olduğunda Trueuzunluk tanımlayıcısını yazmaz. ile FilePutkullanıyorsanızStringIsFixedLength = True, aynı işlemi ile FileGetyapmanız ve dizenin beklenen uzunlukta başlatıldığından emin olmanız gerekir.

Rastgele Modu

Modda Random açılan dosyalar için aşağıdaki kurallar geçerlidir:

  • Yazılan verilerin uzunluğu işlevin yan tümcesinde RecordLength belirtilen uzunluktan FileOpen küçükse, FilePut sonraki kayıtları kayıt uzunluğu sınırlarına yazar. Bir kaydın bitişi ve sonraki kaydın başlangıç noktası arasındaki boşluk, dosya arabelleğinin varolan içeriğiyle doldurulur. Doldurma verilerinin miktarı kesin olarak belirlenemeyeceğinden, genellikle kayıt uzunluğunun yazılan verilerin uzunluğuyla eşleştirmek iyi bir fikirdir. Yazılan verilerin uzunluğu işlevin yan tümcesinde RecordLength belirtilen uzunluktan FileOpen büyükse bir özel durum oluşturulur.

  • Yazılan değişken bir dizeyse, FilePut dize uzunluğunu içeren iki baytlık bir tanımlayıcı yazar ve ardından değişkenine giden verileri yazar. Bu nedenle, işlevindeki yan tümcesi RecordLength tarafından belirtilen kayıt uzunluğu, dizenin FileOpen gerçek uzunluğundan en az iki bayt büyük olmalıdır.

  • Yazılan değişken sayısal bir tür içeren bir nesneyse, FilePut nesnesini tanımlayan VarType iki bayt yazar ve ardından değişkeni yazar. Örneğin, tamsayı FilePut içeren bir nesne yazarken altı bayt yazar: nesneyi (Integer) olarak VarType(3) tanımlayan iki bayt ve verileri içeren dört bayt. İşlevdeki FileOpen parametresi tarafından RecordLength belirtilen kayıt uzunluğu, değişkeni depolamak için gereken gerçek bayt sayısından en az iki bayt büyük olmalıdır.

  • Yazılan değişken bir dize içeren bir nesneyse, FilePut nesnesini tanımlayan VarType(8) iki baytlık bir tanımlayıcı, dizenin uzunluğunu belirten iki baytlık bir tanımlayıcı yazar ve sonra dize verilerini yazar. İşlevdeki parametresi tarafından RecordLength belirtilen kayıt uzunluğu, dizenin FileOpen gerçek uzunluğundan en az dört bayt büyük olmalıdır. Tanımlayıcısı olmayan bir dize koymak istiyorsanız parametresine StringIsFixedLength geçmeniz True ve içinde okuduğunuz dizenin doğru uzunlukta olması gerekir.

  • Yazılan değişken bir dizi ise, dizi boyutları ve boyut için bir tanımlayıcıyı yazmanız gerekip gerekmediğine dair bir seçeneğiniz vardır. Visual Basic 6.0 ve önceki sürümleri, sabit boyutlu dizi için değil ancak dinamik bir dizi için dosya tanımlayıcısı yazar. Visual Basic 2005'de, tanımlayıcı yazılamıyor varsayılandır. Tanımlayıcıyı yazmak için parametresini ArrayIsDynamic olarak Trueayarlayın. Diziyi yazarken, dizinin okunduğu şekilde eşleştirmelisiniz; tanımlayıcı ile okunacaksa, tanımlayıcıyı yazmalısınız. Tanımlayıcı, her bir derece için dizi derecesi, boyutu ve alt sınırı belirtir. Uzunluğu, boyut sayısının 2 artı 8 katına eşittir: (2 + 8 * NumberOfDimensions). İşlevdeki FileOpen yan tümcesi RecordLength tarafından belirtilen kayıt uzunluğu, dizi verilerini ve dizi tanımlayıcısını yazmak için gereken tüm baytların toplamından büyük veya buna eşit olmalıdır. Örneğin, aşağıdaki dizi bildirimi dizi diske yazıldığı zaman 218 bayt gerektirir.

    Dim MyArray(4, 9) As Integer
    
  • Yazılan değişken başka bir değişken türündeyse (değişken uzunlukta bir dize veya nesne değilse), FilePut yalnızca değişken verilerini yazar. İşlevdeki FileOpen yan tümcesi RecordLength tarafından belirtilen kayıt uzunluğu, yazılan verilerin uzunluğundan büyük veya buna eşit olmalıdır.

  • FilePut öğelerin arasında doldurma olmaması dışında, yapıların öğelerini her biri tek tek yazılmış gibi yazar. Özniteliği, VBFixedString diske yazıldığında dizenin boyutunu göstermek için yapılardaki dize alanlarına uygulanabilir.

    Not

    Özniteliği tarafından VBFixedString belirtilenden daha fazla bayt içeren dize alanları diske yazıldığında kesilir,

İkili Mod

Modda Binary açılan dosyalar için, bazı özel durumlar dışında mod kurallarının Random çoğu uygulanır. Modda Binary açılan dosyalar için aşağıdaki kurallar, mod kurallarından Random farklıdır:

  • RecordLength işlevindeki yan tümcesinin FileOpen hiçbir etkisi yoktur. FilePut tüm değişkenleri bitişik olarak, yani kayıtlar arasında doldurma olmadan diske yazar.

  • Yapıdaki bir dizi dışında herhangi bir dizi için yalnızca FilePut verileri yazar. Hiçbir tanımlayıcı yazılmıyor.

  • FilePut iki baytlık uzunluk tanımlayıcısı olmadan yapıların öğesi olmayan değişken uzunlukta dizeler yazar. Yazılan bayt sayısı dizedeki karakter sayısına eşittir. Örneğin, aşağıdaki ifadeler dosya numarası 1'e 11 bayt yazar:

    Dim hellow As String = "Hello World"
    FilePut(1, hellow)
    
  • işlevini kullanarak bir dosyaya FilePut yazmak için sabit listesinden FileIOPermissionAccess erişim gerekirWrite.

Ayrıca bkz.

Şunlara uygulanır

FilePut(Int32, DateTime, Int64)

Kaynak:
FileSystem.vb
Kaynak:
FileSystem.vb
Kaynak:
FileSystem.vb

Bir değişkenden gelen veriyi disk dosyasına yazar. Bu My özellik, dosya G/Ç işlemlerinde FilePutdaha iyi üretkenlik ve performans sağlar. Daha fazla bilgi için bkz. FileSystem.

public static void FilePut (int FileNumber, DateTime Value, long RecordNumber = -1);
static member FilePut : int * DateTime * int64 -> unit
Public Sub FilePut (FileNumber As Integer, Value As DateTime, Optional RecordNumber As Long = -1)

Parametreler

FileNumber
Int32

Gereklidir. Herhangi bir geçerli dosya numarası.

Value
DateTime

Gereklidir. Diske yazılan veriyi içeren geçerli değişken adı.

RecordNumber
Int64

İsteğe bağlı. Yazmanın başladığı kayıt numarası (Random mod dosyaları) veya bayt numarası (Binary mod dosyaları).

Özel durumlar

RecordNumber< 1 ve -1'e eşit değildir.

Dosya modu geçersiz.

Örnekler

Bu örnekte, bir dosyaya FilePut veri yazmak için işlevi kullanılır. Yapıya Person ait beş kayıt dosyaya yazılır.

Structure Person
    Public ID As Integer
    Public Name As String
End Structure

Sub WriteData()
    Dim PatientRecord As Person
    Dim recordNumber As Integer
    '    Open file for random access.
    FileOpen(1, "C:\TESTFILE.txt", OpenMode.Binary)
    ' Loop 5 times.
    For recordNumber = 1 To 5
        ' Define ID.
        PatientRecord.ID = recordNumber
        ' Create a string.
        PatientRecord.Name = "Name " & recordNumber
        ' Write record to file.
        FilePut(1, PatientRecord)
    Next recordNumber
    FileClose(1)
End Sub

Açıklamalar

FilePutyalnızca ve Binary modunda Random geçerlidir.

ile FilePut yazılan veriler genellikle kullanılarak FileGetbir dosyadan okunur.

Bir dosyadaki ilk kayıt veya bayt, 1 konumunda, ikinci kayıt veya bayt, 2 konumunda ve benzeri şekildedir. atlarsanızRecordNumber, son veya işlevden sonraki veya son FileGet işlevin işaret ettiği sonraki Seek kayıt veya FilePut bayt yazılır.

bağımsız StringIsFixedLength değişkeni, işlevin dizeleri değişken veya sabit uzunluk olarak yorumlayıp yorumlamayacağını denetler. FilePut bağımsız değişkeni olduğunda Trueuzunluk tanımlayıcısını yazmaz. ile FilePutkullanıyorsanızStringIsFixedLength = True, aynı işlemi ile FileGetyapmanız ve dizenin beklenen uzunlukta başlatıldığından emin olmanız gerekir.

Rastgele Modu

Modda Random açılan dosyalar için aşağıdaki kurallar geçerlidir:

  • Yazılan verilerin uzunluğu işlevin yan tümcesinde RecordLength belirtilen uzunluktan FileOpen küçükse, FilePut sonraki kayıtları kayıt uzunluğu sınırlarına yazar. Bir kaydın bitişi ve sonraki kaydın başlangıç noktası arasındaki boşluk, dosya arabelleğinin varolan içeriğiyle doldurulur. Doldurma verilerinin miktarı kesin olarak belirlenemeyeceğinden, genellikle kayıt uzunluğunun yazılan verilerin uzunluğuyla eşleştirmek iyi bir fikirdir. Yazılan verilerin uzunluğu işlevin yan tümcesinde RecordLength belirtilen uzunluktan FileOpen büyükse bir özel durum oluşturulur.

  • Yazılan değişken bir dizeyse, FilePut dize uzunluğunu içeren iki baytlık bir tanımlayıcı yazar ve ardından değişkenine giden verileri yazar. Bu nedenle, işlevindeki yan tümcesi RecordLength tarafından belirtilen kayıt uzunluğu, dizenin FileOpen gerçek uzunluğundan en az iki bayt büyük olmalıdır.

  • Yazılan değişken sayısal bir tür içeren bir nesneyse, FilePut nesnesini tanımlayan VarType iki bayt yazar ve ardından değişkeni yazar. Örneğin, tamsayı FilePut içeren bir nesne yazarken altı bayt yazar: nesneyi (Integer) olarak VarType(3) tanımlayan iki bayt ve verileri içeren dört bayt. İşlevdeki FileOpen parametresi tarafından RecordLength belirtilen kayıt uzunluğu, değişkeni depolamak için gereken gerçek bayt sayısından en az iki bayt büyük olmalıdır.

  • Yazılan değişken bir dize içeren bir nesneyse, FilePut nesnesini tanımlayan VarType(8) iki baytlık bir tanımlayıcı, dizenin uzunluğunu belirten iki baytlık bir tanımlayıcı yazar ve sonra dize verilerini yazar. İşlevdeki parametresi tarafından RecordLength belirtilen kayıt uzunluğu, dizenin FileOpen gerçek uzunluğundan en az dört bayt büyük olmalıdır. Tanımlayıcısı olmayan bir dize koymak istiyorsanız parametresine StringIsFixedLength geçmeniz True ve içinde okuduğunuz dizenin doğru uzunlukta olması gerekir.

  • Yazılan değişken bir dizi ise, dizi boyutları ve boyut için bir tanımlayıcıyı yazmanız gerekip gerekmediğine dair bir seçeneğiniz vardır. Visual Basic 6.0 ve önceki sürümleri, sabit boyutlu dizi için değil ancak dinamik bir dizi için dosya tanımlayıcısı yazar. Visual Basic 2005'de, tanımlayıcı yazılamıyor varsayılandır. Tanımlayıcıyı yazmak için parametresini ArrayIsDynamic olarak Trueayarlayın. Diziyi yazarken, dizinin okunduğu şekilde eşleştirmelisiniz; tanımlayıcı ile okunacaksa, tanımlayıcıyı yazmalısınız. Tanımlayıcı, her bir derece için dizi derecesi, boyutu ve alt sınırı belirtir. Uzunluğu, boyut sayısının 2 artı 8 katına eşittir: (2 + 8 * NumberOfDimensions). İşlevdeki FileOpen yan tümcesi RecordLength tarafından belirtilen kayıt uzunluğu, dizi verilerini ve dizi tanımlayıcısını yazmak için gereken tüm baytların toplamından büyük veya buna eşit olmalıdır. Örneğin, aşağıdaki dizi bildirimi dizi diske yazıldığı zaman 218 bayt gerektirir.

    Dim MyArray(4, 9) As Integer
    
  • Yazılan değişken başka bir değişken türündeyse (değişken uzunlukta bir dize veya nesne değilse), FilePut yalnızca değişken verilerini yazar. İşlevdeki FileOpen yan tümcesi RecordLength tarafından belirtilen kayıt uzunluğu, yazılan verilerin uzunluğundan büyük veya buna eşit olmalıdır.

  • FilePut öğelerin arasında doldurma olmaması dışında, yapıların öğelerini her biri tek tek yazılmış gibi yazar. Özniteliği, VBFixedString diske yazıldığında dizenin boyutunu göstermek için yapılardaki dize alanlarına uygulanabilir.

    Not

    Özniteliği tarafından VBFixedString belirtilenden daha fazla bayt içeren dize alanları diske yazıldığında kesilir,

İkili Mod

Modda Binary açılan dosyalar için, bazı özel durumlar dışında mod kurallarının Random çoğu uygulanır. Modda Binary açılan dosyalar için aşağıdaki kurallar, mod kurallarından Random farklıdır:

  • RecordLength işlevindeki yan tümcesinin FileOpen hiçbir etkisi yoktur. FilePut tüm değişkenleri bitişik olarak, yani kayıtlar arasında doldurma olmadan diske yazar.

  • Yapıdaki bir dizi dışında herhangi bir dizi için yalnızca FilePut verileri yazar. Hiçbir tanımlayıcı yazılmıyor.

  • FilePut iki baytlık uzunluk tanımlayıcısı olmadan yapıların öğesi olmayan değişken uzunlukta dizeler yazar. Yazılan bayt sayısı dizedeki karakter sayısına eşittir. Örneğin, aşağıdaki ifadeler dosya numarası 1'e 11 bayt yazar:

    Dim hellow As String = "Hello World"
    FilePut(1, hellow)
    
  • işlevini kullanarak bir dosyaya FilePut yazmak için sabit listesinden FileIOPermissionAccess erişim gerekirWrite.

Ayrıca bkz.

Şunlara uygulanır

FilePut(Int32, Char, Int64)

Kaynak:
FileSystem.vb
Kaynak:
FileSystem.vb
Kaynak:
FileSystem.vb

Bir değişkenden gelen veriyi disk dosyasına yazar. Bu My özellik, dosya G/Ç işlemlerinde FilePutdaha iyi üretkenlik ve performans sağlar. Daha fazla bilgi için bkz. FileSystem.

public static void FilePut (int FileNumber, char Value, long RecordNumber = -1);
static member FilePut : int * char * int64 -> unit
Public Sub FilePut (FileNumber As Integer, Value As Char, Optional RecordNumber As Long = -1)

Parametreler

FileNumber
Int32

Gereklidir. Herhangi bir geçerli dosya numarası.

Value
Char

Gereklidir. Diske yazılan veriyi içeren geçerli değişken adı.

RecordNumber
Int64

İsteğe bağlı. Yazmanın başladığı kayıt numarası (Random mod dosyaları) veya bayt numarası (Binary mod dosyaları).

Özel durumlar

RecordNumber< 1 ve -1'e eşit değildir.

Dosya modu geçersiz.

Örnekler

Bu örnekte, bir dosyaya FilePut veri yazmak için işlevi kullanılır. Yapıya Person ait beş kayıt dosyaya yazılır.

Structure Person
    Public ID As Integer
    Public Name As String
End Structure

Sub WriteData()
    Dim PatientRecord As Person
    Dim recordNumber As Integer
    '    Open file for random access.
    FileOpen(1, "C:\TESTFILE.txt", OpenMode.Binary)
    ' Loop 5 times.
    For recordNumber = 1 To 5
        ' Define ID.
        PatientRecord.ID = recordNumber
        ' Create a string.
        PatientRecord.Name = "Name " & recordNumber
        ' Write record to file.
        FilePut(1, PatientRecord)
    Next recordNumber
    FileClose(1)
End Sub

Açıklamalar

FilePutyalnızca ve Binary modunda Random geçerlidir.

ile FilePut yazılan veriler genellikle kullanılarak FileGetbir dosyadan okunur.

Bir dosyadaki ilk kayıt veya bayt, 1 konumunda, ikinci kayıt veya bayt, 2 konumunda ve benzeri şekildedir. atlarsanızRecordNumber, son veya işlevden sonraki veya son FileGet işlevin işaret ettiği sonraki Seek kayıt veya FilePut bayt yazılır.

bağımsız StringIsFixedLength değişkeni, işlevin dizeleri değişken veya sabit uzunluk olarak yorumlayıp yorumlamayacağını denetler. FilePut bağımsız değişkeni olduğunda Trueuzunluk tanımlayıcısını yazmaz. ile FilePutkullanıyorsanızStringIsFixedLength = True, aynı işlemi ile FileGetyapmanız ve dizenin beklenen uzunlukta başlatıldığından emin olmanız gerekir.

Rastgele Modu

Modda Random açılan dosyalar için aşağıdaki kurallar geçerlidir:

  • Yazılan verilerin uzunluğu işlevin yan tümcesinde RecordLength belirtilen uzunluktan FileOpen küçükse, FilePut sonraki kayıtları kayıt uzunluğu sınırlarına yazar. Bir kaydın bitişi ve sonraki kaydın başlangıç noktası arasındaki boşluk, dosya arabelleğinin varolan içeriğiyle doldurulur. Doldurma verilerinin miktarı kesin olarak belirlenemeyeceğinden, genellikle kayıt uzunluğunun yazılan verilerin uzunluğuyla eşleştirmek iyi bir fikirdir. Yazılan verilerin uzunluğu işlevin yan tümcesinde RecordLength belirtilen uzunluktan FileOpen büyükse bir özel durum oluşturulur.

  • Yazılan değişken bir dizeyse, FilePut dize uzunluğunu içeren iki baytlık bir tanımlayıcı yazar ve ardından değişkenine giden verileri yazar. Bu nedenle, işlevindeki yan tümcesi RecordLength tarafından belirtilen kayıt uzunluğu, dizenin FileOpen gerçek uzunluğundan en az iki bayt büyük olmalıdır.

  • Yazılan değişken sayısal bir tür içeren bir nesneyse, FilePut nesnesini tanımlayan VarType iki bayt yazar ve ardından değişkeni yazar. Örneğin, tamsayı FilePut içeren bir nesne yazarken altı bayt yazar: nesneyi (Integer) olarak VarType(3) tanımlayan iki bayt ve verileri içeren dört bayt. İşlevdeki FileOpen parametresi tarafından RecordLength belirtilen kayıt uzunluğu, değişkeni depolamak için gereken gerçek bayt sayısından en az iki bayt büyük olmalıdır.

  • Yazılan değişken bir dize içeren bir nesneyse, FilePut nesnesini tanımlayan VarType(8) iki baytlık bir tanımlayıcı, dizenin uzunluğunu belirten iki baytlık bir tanımlayıcı yazar ve sonra dize verilerini yazar. İşlevdeki parametresi tarafından RecordLength belirtilen kayıt uzunluğu, dizenin FileOpen gerçek uzunluğundan en az dört bayt büyük olmalıdır. Tanımlayıcısı olmayan bir dize koymak istiyorsanız parametresine StringIsFixedLength geçmeniz True ve içinde okuduğunuz dizenin doğru uzunlukta olması gerekir.

  • Yazılan değişken bir dizi ise, dizi boyutları ve boyut için bir tanımlayıcıyı yazmanız gerekip gerekmediğine dair bir seçeneğiniz vardır. Visual Basic 6.0 ve önceki sürümleri, sabit boyutlu dizi için değil ancak dinamik bir dizi için dosya tanımlayıcısı yazar. Visual Basic 2005'de, tanımlayıcı yazılamıyor varsayılandır. Tanımlayıcıyı yazmak için parametresini ArrayIsDynamic olarak Trueayarlayın. Diziyi yazarken, dizinin okunduğu şekilde eşleştirmelisiniz; tanımlayıcı ile okunacaksa, tanımlayıcıyı yazmalısınız. Tanımlayıcı, her bir derece için dizi derecesi, boyutu ve alt sınırı belirtir. Uzunluğu, boyut sayısının 2 artı 8 katına eşittir: (2 + 8 * NumberOfDimensions). İşlevdeki FileOpen yan tümcesi RecordLength tarafından belirtilen kayıt uzunluğu, dizi verilerini ve dizi tanımlayıcısını yazmak için gereken tüm baytların toplamından büyük veya buna eşit olmalıdır. Örneğin, aşağıdaki dizi bildirimi dizi diske yazıldığı zaman 218 bayt gerektirir.

    Dim MyArray(4, 9) As Integer
    
  • Yazılan değişken başka bir değişken türündeyse (değişken uzunlukta bir dize veya nesne değilse), FilePut yalnızca değişken verilerini yazar. İşlevdeki FileOpen yan tümcesi RecordLength tarafından belirtilen kayıt uzunluğu, yazılan verilerin uzunluğundan büyük veya buna eşit olmalıdır.

  • FilePut öğelerin arasında doldurma olmaması dışında, yapıların öğelerini her biri tek tek yazılmış gibi yazar. Özniteliği, VBFixedString diske yazıldığında dizenin boyutunu göstermek için yapılardaki dize alanlarına uygulanabilir.

    Not

    Özniteliği tarafından VBFixedString belirtilenden daha fazla bayt içeren dize alanları diske yazıldığında kesilir,

İkili Mod

Modda Binary açılan dosyalar için, bazı özel durumlar dışında mod kurallarının Random çoğu uygulanır. Modda Binary açılan dosyalar için aşağıdaki kurallar, mod kurallarından Random farklıdır:

  • RecordLength işlevindeki yan tümcesinin FileOpen hiçbir etkisi yoktur. FilePut tüm değişkenleri bitişik olarak, yani kayıtlar arasında doldurma olmadan diske yazar.

  • Yapıdaki bir dizi dışında herhangi bir dizi için yalnızca FilePut verileri yazar. Hiçbir tanımlayıcı yazılmıyor.

  • FilePut iki baytlık uzunluk tanımlayıcısı olmadan yapıların öğesi olmayan değişken uzunlukta dizeler yazar. Yazılan bayt sayısı dizedeki karakter sayısına eşittir. Örneğin, aşağıdaki ifadeler dosya numarası 1'e 11 bayt yazar:

    Dim hellow As String = "Hello World"
    FilePut(1, hellow)
    
  • işlevini kullanarak bir dosyaya FilePut yazmak için sabit listesinden FileIOPermissionAccess erişim gerekirWrite.

Ayrıca bkz.

Şunlara uygulanır

FilePut(Int32, Byte, Int64)

Kaynak:
FileSystem.vb
Kaynak:
FileSystem.vb
Kaynak:
FileSystem.vb

Bir değişkenden gelen veriyi disk dosyasına yazar. Bu My özellik, dosya G/Ç işlemlerinde FilePutdaha iyi üretkenlik ve performans sağlar. Daha fazla bilgi için bkz. FileSystem.

public static void FilePut (int FileNumber, byte Value, long RecordNumber = -1);
static member FilePut : int * byte * int64 -> unit
Public Sub FilePut (FileNumber As Integer, Value As Byte, Optional RecordNumber As Long = -1)

Parametreler

FileNumber
Int32

Gereklidir. Herhangi bir geçerli dosya numarası.

Value
Byte

Gereklidir. Diske yazılan veriyi içeren geçerli değişken adı.

RecordNumber
Int64

İsteğe bağlı. Yazmanın başladığı kayıt numarası (Random mod dosyaları) veya bayt numarası (Binary mod dosyaları).

Özel durumlar

RecordNumber< 1 ve -1'e eşit değildir.

Dosya modu geçersiz.

Örnekler

Bu örnekte, bir dosyaya FilePut veri yazmak için işlevi kullanılır. Yapıya Person ait beş kayıt dosyaya yazılır.

Structure Person
    Public ID As Integer
    Public Name As String
End Structure

Sub WriteData()
    Dim PatientRecord As Person
    Dim recordNumber As Integer
    '    Open file for random access.
    FileOpen(1, "C:\TESTFILE.txt", OpenMode.Binary)
    ' Loop 5 times.
    For recordNumber = 1 To 5
        ' Define ID.
        PatientRecord.ID = recordNumber
        ' Create a string.
        PatientRecord.Name = "Name " & recordNumber
        ' Write record to file.
        FilePut(1, PatientRecord)
    Next recordNumber
    FileClose(1)
End Sub

Açıklamalar

FilePutyalnızca ve Binary modunda Random geçerlidir.

ile FilePut yazılan veriler genellikle kullanılarak FileGetbir dosyadan okunur.

Bir dosyadaki ilk kayıt veya bayt, 1 konumunda, ikinci kayıt veya bayt, 2 konumunda ve benzeri şekildedir. atlarsanızRecordNumber, son veya işlevden sonraki veya son FileGet işlevin işaret ettiği sonraki Seek kayıt veya FilePut bayt yazılır.

bağımsız StringIsFixedLength değişkeni, işlevin dizeleri değişken veya sabit uzunluk olarak yorumlayıp yorumlamayacağını denetler. FilePut bağımsız değişkeni olduğunda Trueuzunluk tanımlayıcısını yazmaz. ile FilePutkullanıyorsanızStringIsFixedLength = True, aynı işlemi ile FileGetyapmanız ve dizenin beklenen uzunlukta başlatıldığından emin olmanız gerekir.

Rastgele Modu

Modda Random açılan dosyalar için aşağıdaki kurallar geçerlidir:

  • Yazılan verilerin uzunluğu işlevin yan tümcesinde RecordLength belirtilen uzunluktan FileOpen küçükse, FilePut sonraki kayıtları kayıt uzunluğu sınırlarına yazar. Bir kaydın bitişi ve sonraki kaydın başlangıç noktası arasındaki boşluk, dosya arabelleğinin varolan içeriğiyle doldurulur. Doldurma verilerinin miktarı kesin olarak belirlenemeyeceğinden, genellikle kayıt uzunluğunun yazılan verilerin uzunluğuyla eşleştirmek iyi bir fikirdir. Yazılan verilerin uzunluğu işlevin yan tümcesinde RecordLength belirtilen uzunluktan FileOpen büyükse bir özel durum oluşturulur.

  • Yazılan değişken bir dizeyse, FilePut dize uzunluğunu içeren iki baytlık bir tanımlayıcı yazar ve ardından değişkenine giden verileri yazar. Bu nedenle, işlevindeki yan tümcesi RecordLength tarafından belirtilen kayıt uzunluğu, dizenin FileOpen gerçek uzunluğundan en az iki bayt büyük olmalıdır.

  • Yazılan değişken sayısal bir tür içeren bir nesneyse, FilePut nesnesini tanımlayan VarType iki bayt yazar ve ardından değişkeni yazar. Örneğin, tamsayı FilePut içeren bir nesne yazarken altı bayt yazar: nesneyi (Integer) olarak VarType(3) tanımlayan iki bayt ve verileri içeren dört bayt. İşlevdeki FileOpen parametresi tarafından RecordLength belirtilen kayıt uzunluğu, değişkeni depolamak için gereken gerçek bayt sayısından en az iki bayt büyük olmalıdır.

  • Yazılan değişken bir dize içeren bir nesneyse, FilePut nesnesini tanımlayan VarType(8) iki baytlık bir tanımlayıcı, dizenin uzunluğunu belirten iki baytlık bir tanımlayıcı yazar ve sonra dize verilerini yazar. İşlevdeki parametresi tarafından RecordLength belirtilen kayıt uzunluğu, dizenin FileOpen gerçek uzunluğundan en az dört bayt büyük olmalıdır. Tanımlayıcısı olmayan bir dize koymak istiyorsanız parametresine StringIsFixedLength geçmeniz True ve içinde okuduğunuz dizenin doğru uzunlukta olması gerekir.

  • Yazılan değişken bir dizi ise, dizi boyutları ve boyut için bir tanımlayıcıyı yazmanız gerekip gerekmediğine dair bir seçeneğiniz vardır. Visual Basic 6.0 ve önceki sürümleri, sabit boyutlu dizi için değil ancak dinamik bir dizi için dosya tanımlayıcısı yazar. Visual Basic 2005'de, tanımlayıcı yazılamıyor varsayılandır. Tanımlayıcıyı yazmak için parametresini ArrayIsDynamic olarak Trueayarlayın. Diziyi yazarken, dizinin okunduğu şekilde eşleştirmelisiniz; tanımlayıcı ile okunacaksa, tanımlayıcıyı yazmalısınız. Tanımlayıcı, her bir derece için dizi derecesi, boyutu ve alt sınırı belirtir. Uzunluğu, boyut sayısının 2 artı 8 katına eşittir: (2 + 8 * NumberOfDimensions). İşlevdeki FileOpen yan tümcesi RecordLength tarafından belirtilen kayıt uzunluğu, dizi verilerini ve dizi tanımlayıcısını yazmak için gereken tüm baytların toplamından büyük veya buna eşit olmalıdır. Örneğin, aşağıdaki dizi bildirimi dizi diske yazıldığı zaman 218 bayt gerektirir.

    Dim MyArray(4, 9) As Integer
    
  • Yazılan değişken başka bir değişken türündeyse (değişken uzunlukta bir dize veya nesne değilse), FilePut yalnızca değişken verilerini yazar. İşlevdeki FileOpen yan tümcesi RecordLength tarafından belirtilen kayıt uzunluğu, yazılan verilerin uzunluğundan büyük veya buna eşit olmalıdır.

  • FilePut öğelerin arasında doldurma olmaması dışında, yapıların öğelerini her biri tek tek yazılmış gibi yazar. Özniteliği, VBFixedString diske yazıldığında dizenin boyutunu göstermek için yapılardaki dize alanlarına uygulanabilir.

    Not

    Özniteliği tarafından VBFixedString belirtilenden daha fazla bayt içeren dize alanları diske yazıldığında kesilir,

İkili Mod

Modda Binary açılan dosyalar için, bazı özel durumlar dışında mod kurallarının Random çoğu uygulanır. Modda Binary açılan dosyalar için aşağıdaki kurallar, mod kurallarından Random farklıdır:

  • RecordLength işlevindeki yan tümcesinin FileOpen hiçbir etkisi yoktur. FilePut tüm değişkenleri bitişik olarak, yani kayıtlar arasında doldurma olmadan diske yazar.

  • Yapıdaki bir dizi dışında herhangi bir dizi için yalnızca FilePut verileri yazar. Hiçbir tanımlayıcı yazılmıyor.

  • FilePut iki baytlık uzunluk tanımlayıcısı olmadan yapıların öğesi olmayan değişken uzunlukta dizeler yazar. Yazılan bayt sayısı dizedeki karakter sayısına eşittir. Örneğin, aşağıdaki ifadeler dosya numarası 1'e 11 bayt yazar:

    Dim hellow As String = "Hello World"
    FilePut(1, hellow)
    
  • işlevini kullanarak bir dosyaya FilePut yazmak için sabit listesinden FileIOPermissionAccess erişim gerekirWrite.

Ayrıca bkz.

Şunlara uygulanır

FilePut(Int32, Boolean, Int64)

Kaynak:
FileSystem.vb
Kaynak:
FileSystem.vb
Kaynak:
FileSystem.vb

Bir değişkenden gelen veriyi disk dosyasına yazar. Bu My özellik, dosya G/Ç işlemlerinde FilePutdaha iyi üretkenlik ve performans sağlar. Daha fazla bilgi için bkz. FileSystem.

public static void FilePut (int FileNumber, bool Value, long RecordNumber = -1);
static member FilePut : int * bool * int64 -> unit
Public Sub FilePut (FileNumber As Integer, Value As Boolean, Optional RecordNumber As Long = -1)

Parametreler

FileNumber
Int32

Gereklidir. Herhangi bir geçerli dosya numarası.

Value
Boolean

Gereklidir. Diske yazılan veriyi içeren geçerli değişken adı.

RecordNumber
Int64

İsteğe bağlı. Yazmanın başladığı kayıt numarası (Random mod dosyaları) veya bayt numarası (Binary mod dosyaları).

Özel durumlar

RecordNumber< 1 ve -1'e eşit değildir.

Dosya modu geçersiz.

Örnekler

Bu örnekte, bir dosyaya FilePut veri yazmak için işlevi kullanılır. Yapıya Person ait beş kayıt dosyaya yazılır.

Structure Person
    Public ID As Integer
    Public Name As String
End Structure

Sub WriteData()
    Dim PatientRecord As Person
    Dim recordNumber As Integer
    '    Open file for random access.
    FileOpen(1, "C:\TESTFILE.txt", OpenMode.Binary)
    ' Loop 5 times.
    For recordNumber = 1 To 5
        ' Define ID.
        PatientRecord.ID = recordNumber
        ' Create a string.
        PatientRecord.Name = "Name " & recordNumber
        ' Write record to file.
        FilePut(1, PatientRecord)
    Next recordNumber
    FileClose(1)
End Sub

Açıklamalar

FilePutyalnızca ve Binary modunda Random geçerlidir.

ile FilePut yazılan veriler genellikle kullanılarak FileGetbir dosyadan okunur.

Bir dosyadaki ilk kayıt veya bayt, 1 konumunda, ikinci kayıt veya bayt, 2 konumunda ve benzeri şekildedir. atlarsanızRecordNumber, son veya işlevden sonraki veya son FileGet işlevin işaret ettiği sonraki Seek kayıt veya FilePut bayt yazılır.

bağımsız StringIsFixedLength değişkeni, işlevin dizeleri değişken veya sabit uzunluk olarak yorumlayıp yorumlamayacağını denetler. FilePut bağımsız değişkeni olduğunda Trueuzunluk tanımlayıcısını yazmaz. ile FilePutkullanıyorsanızStringIsFixedLength = True, aynı işlemi ile FileGetyapmanız ve dizenin beklenen uzunlukta başlatıldığından emin olmanız gerekir.

Rastgele Modu

Modda Random açılan dosyalar için aşağıdaki kurallar geçerlidir:

  • Yazılan verilerin uzunluğu işlevin yan tümcesinde RecordLength belirtilen uzunluktan FileOpen küçükse, FilePut sonraki kayıtları kayıt uzunluğu sınırlarına yazar. Bir kaydın bitişi ve sonraki kaydın başlangıç noktası arasındaki boşluk, dosya arabelleğinin varolan içeriğiyle doldurulur. Doldurma verilerinin miktarı kesin olarak belirlenemeyeceğinden, genellikle kayıt uzunluğunun yazılan verilerin uzunluğuyla eşleştirmek iyi bir fikirdir. Yazılan verilerin uzunluğu işlevin yan tümcesinde RecordLength belirtilen uzunluktan FileOpen büyükse bir özel durum oluşturulur.

  • Yazılan değişken bir dizeyse, FilePut dize uzunluğunu içeren iki baytlık bir tanımlayıcı yazar ve ardından değişkenine giden verileri yazar. Bu nedenle, işlevindeki yan tümcesi RecordLength tarafından belirtilen kayıt uzunluğu, dizenin FileOpen gerçek uzunluğundan en az iki bayt büyük olmalıdır.

  • Yazılan değişken sayısal bir tür içeren bir nesneyse, FilePut nesnesini tanımlayan VarType iki bayt yazar ve ardından değişkeni yazar. Örneğin, tamsayı FilePut içeren bir nesne yazarken altı bayt yazar: nesneyi (Integer) olarak VarType(3) tanımlayan iki bayt ve verileri içeren dört bayt. İşlevdeki FileOpen parametresi tarafından RecordLength belirtilen kayıt uzunluğu, değişkeni depolamak için gereken gerçek bayt sayısından en az iki bayt büyük olmalıdır.

  • Yazılan değişken bir dize içeren bir nesneyse, FilePut nesnesini tanımlayan VarType(8) iki baytlık bir tanımlayıcı, dizenin uzunluğunu belirten iki baytlık bir tanımlayıcı yazar ve sonra dize verilerini yazar. İşlevdeki parametresi tarafından RecordLength belirtilen kayıt uzunluğu, dizenin FileOpen gerçek uzunluğundan en az dört bayt büyük olmalıdır. Tanımlayıcısı olmayan bir dize koymak istiyorsanız parametresine StringIsFixedLength geçmeniz True ve içinde okuduğunuz dizenin doğru uzunlukta olması gerekir.

  • Yazılan değişken bir dizi ise, dizi boyutları ve boyut için bir tanımlayıcıyı yazmanız gerekip gerekmediğine dair bir seçeneğiniz vardır. Visual Basic 6.0 ve önceki sürümleri, sabit boyutlu dizi için değil ancak dinamik bir dizi için dosya tanımlayıcısı yazar. Visual Basic 2005'de, tanımlayıcı yazılamıyor varsayılandır. Tanımlayıcıyı yazmak için parametresini ArrayIsDynamic olarak Trueayarlayın. Diziyi yazarken, dizinin okunduğu şekilde eşleştirmelisiniz; tanımlayıcı ile okunacaksa, tanımlayıcıyı yazmalısınız. Tanımlayıcı, her bir derece için dizi derecesi, boyutu ve alt sınırı belirtir. Uzunluğu, boyut sayısının 2 artı 8 katına eşittir: (2 + 8 * NumberOfDimensions). İşlevdeki FileOpen yan tümcesi RecordLength tarafından belirtilen kayıt uzunluğu, dizi verilerini ve dizi tanımlayıcısını yazmak için gereken tüm baytların toplamından büyük veya buna eşit olmalıdır. Örneğin, aşağıdaki dizi bildirimi dizi diske yazıldığı zaman 218 bayt gerektirir.

    Dim MyArray(4, 9) As Integer
    
  • Yazılan değişken başka bir değişken türündeyse (değişken uzunlukta bir dize veya nesne değilse), FilePut yalnızca değişken verilerini yazar. İşlevdeki FileOpen yan tümcesi RecordLength tarafından belirtilen kayıt uzunluğu, yazılan verilerin uzunluğundan büyük veya buna eşit olmalıdır.

  • FilePut öğelerin arasında doldurma olmaması dışında, yapıların öğelerini her biri tek tek yazılmış gibi yazar. Özniteliği, VBFixedString diske yazıldığında dizenin boyutunu göstermek için yapılardaki dize alanlarına uygulanabilir.

    Not

    Özniteliği tarafından VBFixedString belirtilenden daha fazla bayt içeren dize alanları diske yazıldığında kesilir,

İkili Mod

Modda Binary açılan dosyalar için, bazı özel durumlar dışında mod kurallarının Random çoğu uygulanır. Modda Binary açılan dosyalar için aşağıdaki kurallar, mod kurallarından Random farklıdır:

  • RecordLength işlevindeki yan tümcesinin FileOpen hiçbir etkisi yoktur. FilePut tüm değişkenleri bitişik olarak, yani kayıtlar arasında doldurma olmadan diske yazar.

  • Yapıdaki bir dizi dışında herhangi bir dizi için yalnızca FilePut verileri yazar. Hiçbir tanımlayıcı yazılmıyor.

  • FilePut iki baytlık uzunluk tanımlayıcısı olmadan yapıların öğesi olmayan değişken uzunlukta dizeler yazar. Yazılan bayt sayısı dizedeki karakter sayısına eşittir. Örneğin, aşağıdaki ifadeler dosya numarası 1'e 11 bayt yazar:

    Dim hellow As String = "Hello World"
    FilePut(1, hellow)
    
  • işlevini kullanarak bir dosyaya FilePut yazmak için sabit listesinden FileIOPermissionAccess erişim gerekirWrite.

Ayrıca bkz.

Şunlara uygulanır

FilePut(Int32, Int16, Int64)

Kaynak:
FileSystem.vb
Kaynak:
FileSystem.vb
Kaynak:
FileSystem.vb

Bir değişkenden gelen veriyi disk dosyasına yazar. Bu My özellik, dosya G/Ç işlemlerinde FilePutdaha iyi üretkenlik ve performans sağlar. Daha fazla bilgi için bkz. FileSystem.

public static void FilePut (int FileNumber, short Value, long RecordNumber = -1);
static member FilePut : int * int16 * int64 -> unit
Public Sub FilePut (FileNumber As Integer, Value As Short, Optional RecordNumber As Long = -1)

Parametreler

FileNumber
Int32

Gereklidir. Herhangi bir geçerli dosya numarası.

Value
Int16

Gereklidir. Diske yazılan veriyi içeren geçerli değişken adı.

RecordNumber
Int64

İsteğe bağlı. Yazmanın başladığı kayıt numarası (Random mod dosyaları) veya bayt numarası (Binary mod dosyaları).

Özel durumlar

RecordNumber< 1 ve -1'e eşit değildir.

Dosya modu geçersiz.

Örnekler

Bu örnekte, bir dosyaya FilePut veri yazmak için işlevi kullanılır. Yapıya Person ait beş kayıt dosyaya yazılır.

Structure Person
    Public ID As Integer
    Public Name As String
End Structure

Sub WriteData()
    Dim PatientRecord As Person
    Dim recordNumber As Integer
    '    Open file for random access.
    FileOpen(1, "C:\TESTFILE.txt", OpenMode.Binary)
    ' Loop 5 times.
    For recordNumber = 1 To 5
        ' Define ID.
        PatientRecord.ID = recordNumber
        ' Create a string.
        PatientRecord.Name = "Name " & recordNumber
        ' Write record to file.
        FilePut(1, PatientRecord)
    Next recordNumber
    FileClose(1)
End Sub

Açıklamalar

FilePutyalnızca ve Binary modunda Random geçerlidir.

ile FilePut yazılan veriler genellikle kullanılarak FileGetbir dosyadan okunur.

Bir dosyadaki ilk kayıt veya bayt, 1 konumunda, ikinci kayıt veya bayt, 2 konumunda ve benzeri şekildedir. atlarsanızRecordNumber, son veya işlevden sonraki veya son FileGet işlevin işaret ettiği sonraki Seek kayıt veya FilePut bayt yazılır.

bağımsız StringIsFixedLength değişkeni, işlevin dizeleri değişken veya sabit uzunluk olarak yorumlayıp yorumlamayacağını denetler. FilePut bağımsız değişkeni olduğunda Trueuzunluk tanımlayıcısını yazmaz. ile FilePutkullanıyorsanızStringIsFixedLength = True, aynı işlemi ile FileGetyapmanız ve dizenin beklenen uzunlukta başlatıldığından emin olmanız gerekir.

Rastgele Modu

Modda Random açılan dosyalar için aşağıdaki kurallar geçerlidir:

  • Yazılan verilerin uzunluğu işlevin yan tümcesinde RecordLength belirtilen uzunluktan FileOpen küçükse, FilePut sonraki kayıtları kayıt uzunluğu sınırlarına yazar. Bir kaydın bitişi ve sonraki kaydın başlangıç noktası arasındaki boşluk, dosya arabelleğinin varolan içeriğiyle doldurulur. Doldurma verilerinin miktarı kesin olarak belirlenemeyeceğinden, genellikle kayıt uzunluğunun yazılan verilerin uzunluğuyla eşleştirmek iyi bir fikirdir. Yazılan verilerin uzunluğu işlevin yan tümcesinde RecordLength belirtilen uzunluktan FileOpen büyükse bir özel durum oluşturulur.

  • Yazılan değişken bir dizeyse, FilePut dize uzunluğunu içeren iki baytlık bir tanımlayıcı yazar ve ardından değişkenine giden verileri yazar. Bu nedenle, işlevindeki yan tümcesi RecordLength tarafından belirtilen kayıt uzunluğu, dizenin FileOpen gerçek uzunluğundan en az iki bayt büyük olmalıdır.

  • Yazılan değişken sayısal bir tür içeren bir nesneyse, FilePut nesnesini tanımlayan VarType iki bayt yazar ve ardından değişkeni yazar. Örneğin, tamsayı FilePut içeren bir nesne yazarken altı bayt yazar: nesneyi (Integer) olarak VarType(3) tanımlayan iki bayt ve verileri içeren dört bayt. İşlevdeki FileOpen parametresi tarafından RecordLength belirtilen kayıt uzunluğu, değişkeni depolamak için gereken gerçek bayt sayısından en az iki bayt büyük olmalıdır.

  • Yazılan değişken bir dize içeren bir nesneyse, FilePut nesnesini tanımlayanVarType(8) iki baytlık bir tanımlayıcı, dizenin uzunluğunu belirten iki baytlık bir tanımlayıcı yazar ve sonra dize verilerini yazar. İşlevdeki parametresi tarafından RecordLength belirtilen kayıt uzunluğu, dizenin FileOpen gerçek uzunluğundan en az dört bayt büyük olmalıdır. Tanımlayıcısı olmayan bir dize koymak istiyorsanız parametresine StringIsFixedLength geçmeniz True ve içinde okuduğunuz dizenin doğru uzunlukta olması gerekir.

  • Yazılan değişken bir dizi ise, dizi boyutları ve boyut için bir tanımlayıcıyı yazmanız gerekip gerekmediğine dair bir seçeneğiniz vardır. Visual Basic 6.0 ve önceki sürümleri, sabit boyutlu dizi için değil ancak dinamik bir dizi için dosya tanımlayıcısı yazar. Visual Basic 2005'de, tanımlayıcı yazılamıyor varsayılandır. Tanımlayıcıyı yazmak için parametresini ArrayIsDynamic olarak Trueayarlayın. Diziyi yazarken, dizinin okunduğu şekilde eşleştirmelisiniz; tanımlayıcı ile okunacaksa, tanımlayıcıyı yazmalısınız. Tanımlayıcı, her bir derece için dizi derecesi, boyutu ve alt sınırı belirtir. Uzunluğu, boyut sayısının 2 artı 8 katına eşittir: (2 + 8 * NumberOfDimensions). İşlevdeki FileOpen yan tümcesi RecordLength tarafından belirtilen kayıt uzunluğu, dizi verilerini ve dizi tanımlayıcısını yazmak için gereken tüm baytların toplamından büyük veya buna eşit olmalıdır. Örneğin, aşağıdaki dizi bildirimi dizi diske yazıldığı zaman 218 bayt gerektirir.

    Dim MyArray(4, 9) As Integer
    
  • Yazılan değişken başka bir değişken türündeyse (değişken uzunlukta bir dize veya nesne değilse), FilePut yalnızca değişken verilerini yazar. İşlevdeki FileOpen yan tümcesi RecordLength tarafından belirtilen kayıt uzunluğu, yazılan verilerin uzunluğundan büyük veya buna eşit olmalıdır.

  • FilePut öğelerin arasında doldurma olmaması dışında, yapıların öğelerini her biri tek tek yazılmış gibi yazar. Özniteliği, VBFixedString diske yazıldığında dizenin boyutunu göstermek için yapılardaki dize alanlarına uygulanabilir.

    Not

    Özniteliği tarafından VBFixedString belirtilenden daha fazla bayt içeren dize alanları diske yazıldığında kesilir,

İkili Mod

Modda Binary açılan dosyalar için, bazı özel durumlar dışında mod kurallarının Random çoğu uygulanır. Modda Binary açılan dosyalar için aşağıdaki kurallar, mod kurallarından Random farklıdır:

  • RecordLength işlevindeki yan tümcesinin FileOpen hiçbir etkisi yoktur. FilePut tüm değişkenleri bitişik olarak, yani kayıtlar arasında doldurma olmadan diske yazar.

  • Yapıdaki bir dizi dışında herhangi bir dizi için yalnızca FilePut verileri yazar. Hiçbir tanımlayıcı yazılmıyor.

  • FilePut iki baytlık uzunluk tanımlayıcısı olmadan yapıların öğesi olmayan değişken uzunlukta dizeler yazar. Yazılan bayt sayısı dizedeki karakter sayısına eşittir. Örneğin, aşağıdaki ifadeler dosya numarası 1'e 11 bayt yazar:

    Dim hellow As String = "Hello World"
    FilePut(1, hellow)
    
  • işlevini kullanarak bir dosyaya FilePut yazmak için sabit listesinden FileIOPermissionAccess erişim gerekirWrite.

Ayrıca bkz.

Şunlara uygulanır