FileSystem.FileGet 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
將開放磁碟檔案的資料讀取到變數中。 相較於 FileGet
,My
功能可提升檔案 I/O 作業的產能和效能。 如需詳細資訊,請參閱FileSystem。
多載
FileGet(Int32, Array, Int64, Boolean, Boolean) |
將開放磁碟檔案的資料讀取到變數中。 相較於 |
FileGet(Int32, String, Int64, Boolean) |
將開放磁碟檔案的資料讀取到變數中。 相較於 |
FileGet(Int32, ValueType, Int64) |
將開放磁碟檔案的資料讀取到變數中。 相較於 |
FileGet(Int32, Single, Int64) |
將開放磁碟檔案的資料讀取到變數中。 相較於 |
FileGet(Int32, Int64, Int64) |
將開放磁碟檔案的資料讀取到變數中。 相較於 |
FileGet(Int32, Int32, Int64) |
將開放磁碟檔案的資料讀取到變數中。 相較於 |
FileGet(Int32, Decimal, Int64) |
將開放磁碟檔案的資料讀取到變數中。 相較於 |
FileGet(Int32, Double, Int64) |
將開放磁碟檔案的資料讀取到變數中。 相較於 |
FileGet(Int32, DateTime, Int64) |
將開放磁碟檔案的資料讀取到變數中。 相較於 |
FileGet(Int32, Char, Int64) |
將開放磁碟檔案的資料讀取到變數中。 相較於 |
FileGet(Int32, Byte, Int64) |
將開放磁碟檔案的資料讀取到變數中。 相較於 |
FileGet(Int32, Boolean, Int64) |
將開放磁碟檔案的資料讀取到變數中。 相較於 |
FileGet(Int32, Int16, Int64) |
將開放磁碟檔案的資料讀取到變數中。 相較於 |
FileGet(Int32, Array, Int64, Boolean, Boolean)
將開放磁碟檔案的資料讀取到變數中。 相較於 FileGet
,My
功能可提升檔案 I/O 作業的產能和效能。 如需詳細資訊,請參閱FileSystem。
public static void FileGet (int FileNumber, ref Array Value, long RecordNumber = -1, bool ArrayIsDynamic = false, bool StringIsFixedLength = false);
static member FileGet : int * Array * int64 * bool * bool -> unit
Public Sub FileGet (FileNumber As Integer, ByRef Value As Array, Optional RecordNumber As Long = -1, Optional ArrayIsDynamic As Boolean = false, Optional StringIsFixedLength As Boolean = false)
參數
- FileNumber
- Int32
必要。 任何有效的檔案數目。
- Value
- Array
必要。 有效的變數名稱,資料將讀取至其中。
- RecordNumber
- Int64
選擇性。 要開始讀取的資料錄數目 (Random
模式檔案) 或位元組數目 (Binary
模式檔案)。
- ArrayIsDynamic
- Boolean
選擇性。 只有在編寫陣列時才適用。 指定是否將陣列視為動態 (Dynamic),以及是否有必要指定描述陣列大小和界限的陣列描述元。
- StringIsFixedLength
- Boolean
選擇性。 只有在編寫字串時才適用。 指定是否要為字串寫入描述長度的雙位元組描述元。 預設為 False
。
例外狀況
RecordNumber
< 1 且不等於 -1。
檔案模式無效。
備註
FileGet
只有在和 Binary
模式中Random
才有效。
使用 FileGet
讀取的數據通常會使用 FilePut
寫入檔案。
檔案中的第一筆記錄或位元組位於位置 1、第二筆記錄或位元組位於位置 2,依此類故。 如果您省略 RecordNumber
,則會讀取最後 FileGet
一個或 FilePut
函數 (或最後一個函式所指向 Seek
的下一筆記錄或位元組) 。
重要
從檔案讀取時,請勿根據擴展名來決定檔案的內容。 例如,名為 Form1.vb 的檔案可能不是 Visual Basic 原始程式檔。
隨機模式
針對以 Random
模式開啟的檔案,適用下列規則:
如果讀取的數據長度小於函式子句
FileOpen
中指定的RecordLength
長度,FileGet
則會讀取記錄長度界限的後續記錄。 一筆記錄結尾與下一筆記錄開始之間的空間會填補檔案緩衝區的現有內容。 由於無法以任何確定性判斷填補數據量,因此通常最好讓記錄長度符合所讀取數據的長度。根據預設,如果所讀取的變數是字串,則會讀取包含字元串長度的雙位元組描述元,
FileGet
然後讀取進入變數的數據。 因此,函式子句FileOpen
所RecordLength
指定的記錄長度必須至少為兩個大於字元串實際長度的位元組。 Visual Basic 6.0 和舊版支援固定長度字元串;放置至檔案時,不會寫入長度描述元。 如果您想要讀取不含描述元的字串,您應該傳遞True
至StringIsFixedLength
參數,而您讀取的字串應該是正確的長度。如果要讀取的變數是陣列,您可以選擇是否要讀取陣列大小和維度的描述元。 若要寫入描述元,請將
ArrayIsDynamic
參數設定為True
。 讀取陣列時,您必須符合寫入數位的方式。 如果是使用描述元撰寫的,您必須讀取描述元。 如果未使用描述元,則傳入FileGet
數位的大小和界限會決定要讀取的內容。描述項會指定陣列的排名、大小,以及每個排名的下限。 其長度等於 2 加上維度數目的 8 倍: (2 + 8 * NumberOfDimensions) 。 函式中
FileOpen
參數指定的RecordLength
記錄長度必須大於或等於寫入陣列資料和陣列描述元所需的所有位元組總和。 例如,當陣列寫入磁碟時,下列陣列宣告需要 218 個字節。Dim MyArray(4, 9) As Integer
218 個字節的散發方式如下:
描述項的 18 個字節: (2 + 8 * 2)
數據的 200 個字節: (5 * 10 * 4) 。
如果要讀取的變數是任何其他類型的變數, (不是可變長度字串或物件) ,
FileGet
則只會讀取變數數據。 函式中FileOpen
子句指定的RecordLength
記錄長度必須大於或等於所讀取數據的長度。FileGet
會讀取結構的專案,就像是個別讀取每個元素一樣,不同之處在於元素之間沒有填補。 在磁碟上,以) 寫入FilePut
的使用者定義類型 (動態陣列前面會加上長度等於 2 加上維度數目的 8 倍: (2 + 8 * NumberOfDimensions) 。 函式中FileOpen
子句指定的RecordLength
記錄長度必須大於或等於讀取個別專案所需的所有位元組總和。 這包括任何陣列及其描述項。 屬性VBFixedString
可以套用至結構中的字串字段,以指出寫入磁碟時字元串的大小。
二進位模式
對於以 Binary
模式開啟的 Random
檔案,大部分模式規則都會套用,但有一些例外。 在模式中 Binary
開啟的檔案下列規則與模式的規則 Random
不同:
函
RecordLength
式中的FileOpen
子句沒有任何作用。FileGet
連續讀取磁碟的所有變數;也就是說,在記錄之間不填補。對於結構中陣列以外的任何陣列,
FileGet
則只會讀取數據。 沒有讀取描述項。FileGet
會讀取非結構元素的可變長度字元串,而不需要預期雙位元組長度描述元。 讀取的位元組數目等於字串中已經有的字元數。重要
使用
FileGet
函式從檔案讀取需要Read
從列舉存取 FileIOPermissionAccess 。
另請參閱
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- 在 Visual Basic 中讀取檔案
- 在 Visual Basic 中寫入檔案
適用於
FileGet(Int32, String, Int64, Boolean)
將開放磁碟檔案的資料讀取到變數中。 相較於 FileGet
,My
功能可提升檔案 I/O 作業的產能和效能。 如需詳細資訊,請參閱FileSystem。
public static void FileGet (int FileNumber, ref string Value, long RecordNumber = -1, bool StringIsFixedLength = false);
static member FileGet : int * string * int64 * bool -> unit
Public Sub FileGet (FileNumber As Integer, ByRef Value As String, Optional RecordNumber As Long = -1, Optional StringIsFixedLength As Boolean = false)
參數
- FileNumber
- Int32
必要。 任何有效的檔案數目。
- Value
- String
必要。 有效的變數名稱,資料將讀取至其中。
- RecordNumber
- Int64
選擇性。 要開始讀取的資料錄數目 (Random
模式檔案) 或位元組數目 (Binary
模式檔案)。
- StringIsFixedLength
- Boolean
選擇性。 只有在編寫字串時才適用。 指定是否要為字串寫入描述長度的雙位元組描述元。 預設為 False
。
例外狀況
RecordNumber
< 1 且不等於 -1。
檔案模式無效。
備註
FileGet
只有在和 Binary
模式中Random
才有效。
使用 FileGet
讀取的數據通常會使用 FilePut
寫入檔案。
檔案中的第一筆記錄或位元組位於位置 1、第二筆記錄或位元組位於位置 2,依此類故。 如果您省略 RecordNumber
,則會讀取最後 FileGet
一個或 FilePut
函數 (或最後一個函式所指向 Seek
的下一筆記錄或位元組) 。
重要
從檔案讀取時,請勿根據擴展名來決定檔案的內容。 例如,名為 Form1.vb 的檔案可能不是 Visual Basic 原始程式檔。
隨機模式
針對以 Random
模式開啟的檔案,適用下列規則:
如果讀取的數據長度小於函式子句
FileOpen
中指定的RecordLength
長度,FileGet
則會讀取記錄長度界限的後續記錄。 一筆記錄結尾與下一筆記錄開頭之間的空間會填補檔案緩衝區的現有內容。 由於無法以任何確定性判斷填補數據量,因此通常最好讓記錄長度符合所讀取數據的長度。根據預設,如果所讀取的變數是字串,則會讀取包含字元串長度的雙位元組描述元,
FileGet
然後讀取進入變數的數據。 因此,函式子句FileOpen
所RecordLength
指定的記錄長度必須至少為兩個大於字元串實際長度的位元組。 Visual Basic 6.0 和舊版支援固定長度字元串;放置至檔案時,不會寫入長度描述元。 如果您想要讀取不含描述元的字串,您應該傳遞True
至StringIsFixedLength
參數,而您讀取的字串應該是正確的長度。如果要讀取的變數是陣列,您可以選擇是否要讀取陣列大小和維度的描述元。 若要寫入描述元,請將
ArrayIsDynamic
參數設定為True
。 讀取陣列時,您必須符合寫入數位的方式。 如果是使用描述元撰寫的,您必須讀取描述元。 如果未使用描述元,則傳入FileGet
數位的大小和界限會決定要讀取的內容。描述項會指定陣列的排名、大小,以及每個排名的下限。 其長度等於 2 加上維度數目的 8 倍: (2 + 8 * NumberOfDimensions) 。 函式中
FileOpen
參數指定的RecordLength
記錄長度必須大於或等於寫入陣列資料和陣列描述元所需的所有位元組總和。 例如,當陣列寫入磁碟時,下列陣列宣告需要 218 個字節。Dim MyArray(4, 9) As Integer
218 個字節的散發方式如下:
描述項的 18 個字節: (2 + 8 * 2)
數據的 200 個字節: (5 * 10 * 4) 。
如果要讀取的變數是任何其他類型的變數, (不是可變長度字串或物件) ,
FileGet
則只會讀取變數數據。 函式中FileOpen
子句指定的RecordLength
記錄長度必須大於或等於所讀取數據的長度。FileGet
會讀取結構的專案,就像是個別讀取每個元素一樣,不同之處在於元素之間沒有填補。 在磁碟上,以) 寫入FilePut
的使用者定義類型 (動態陣列前面會加上長度等於 2 加上維度數目的 8 倍: (2 + 8 * NumberOfDimensions) 。 函式中FileOpen
子句指定的RecordLength
記錄長度必須大於或等於讀取個別專案所需的所有位元組總和。 這包括任何陣列及其描述項。 屬性VBFixedString
可以套用至結構中的字串字段,以指出寫入磁碟時字元串的大小。
二進位模式
對於以 Binary
模式開啟的 Random
檔案,大部分模式規則都會套用,但有一些例外。 在模式中開啟的 Binary
檔案,下列規則與模式的規則 Random
不同:
函
RecordLength
式中的FileOpen
子句沒有任何作用。FileGet
連續讀取磁碟的所有變數;也就是說,不需在記錄之間填補。對於結構中陣列以外的任何陣列,
FileGet
則只會讀取數據。 未讀取描述項。FileGet
會讀取非結構元素的可變長度字元串,而不需要預期雙位元組長度描述元。 讀取的位元組數目等於字串中已經的字元數。重要
使用
FileGet
函式從檔案讀取需要Read
從 FileIOPermissionAccess 列舉存取。
另請參閱
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- 在 Visual Basic 中讀取檔案
- 在 Visual Basic 中寫入檔案
適用於
FileGet(Int32, ValueType, Int64)
將開放磁碟檔案的資料讀取到變數中。 相較於 FileGet
,My
功能可提升檔案 I/O 作業的產能和效能。 如需詳細資訊,請參閱FileSystem。
public static void FileGet (int FileNumber, ref ValueType Value, long RecordNumber = -1);
static member FileGet : int * ValueType * int64 -> unit
Public Sub FileGet (FileNumber As Integer, ByRef Value As ValueType, Optional RecordNumber As Long = -1)
參數
- FileNumber
- Int32
必要。 任何有效的檔案數目。
- Value
- ValueType
必要。 有效的變數名稱,資料將讀取至其中。
- RecordNumber
- Int64
選擇性。 要開始讀取的資料錄數目 (Random
模式檔案) 或位元組數目 (Binary
模式檔案)。
例外狀況
RecordNumber
< 1 且不等於 -1。
檔案模式無效。
備註
FileGet
只有在和 Binary
模式中Random
才有效。
使用 FileGet
讀取的數據通常會使用 FilePut
寫入檔案。
檔案中的第一筆記錄或位元組位於位置 1、第二筆記錄或位元組位於位置 2,依此類移。 如果您省略 RecordNumber
,則會讀取最後 FileGet
一筆或 FilePut
函式之後的下一筆記錄或位元組, (或最後一 Seek
個函式所指向) 。
重要
從檔案讀取時,請勿根據擴展名來決定檔案的內容。 例如,名為 Form1.vb 的檔案可能不是 Visual Basic 原始程式檔。
隨機模式
針對以模式開啟的 Random
檔案,適用下列規則:
如果讀取的數據長度小於函式子句
FileOpen
中指定的RecordLength
長度,則會FileGet
讀取記錄長度界限的後續記錄。 一筆記錄結尾與下一筆記錄開頭之間的空間會填補檔案緩衝區的現有內容。 由於無法以任何確定性來判斷填補數據量,因此最好讓記錄長度符合所讀取數據的長度。根據預設,如果要讀取的變數是字串,
FileGet
則會讀取包含字元串長度的雙位元組描述元,然後讀取進入變數的數據。 因此,函式 子句FileOpen
所RecordLength
指定的記錄長度至少必須大於字串的實際長度兩個字節。 Visual Basic 6.0 和舊版支援固定長度字元串;當放入檔案時,不會寫入長度描述項。 如果您想要讀取不含描述元的字串,您應該傳遞True
至StringIsFixedLength
參數,而所讀取的字串應該是正確的長度。如果要讀取的變數是陣列,您可以選擇是否要讀取陣列大小和維度的描述項。 若要撰寫描述項目,請將
ArrayIsDynamic
參數設定為True
。 讀取陣列時,您必須符合寫入數位的方式。 如果是以描述元撰寫的,您必須讀取描述元。 如果未使用描述項,傳入數位FileGet
的大小和界限會決定要讀取的內容。描述項會指定陣列的順位、大小和每個順位的下限。 其長度等於 2 加上維度數目的 8 倍: (2 + 8 * NumberOfDimensions) 。 函式中
RecordLength
FileOpen
參數所指定的記錄長度必須大於或等於寫入陣列數據和陣列描述元所需的所有位元組總和。 例如,當陣列寫入磁碟時,下列陣列宣告需要 218 個字節。Dim MyArray(4, 9) As Integer
218 個字節的散發方式如下:
描述元的 18 個字節: (2 + 8 * 2)
數據的 200 個字節: (5 * 10 * 4) 。
如果要讀取的變數是其他類型的變數, (不是可變長度字串或物件) ,
FileGet
則只會讀取變數數據。 函式中FileOpen
子句所RecordLength
指定的記錄長度必須大於或等於所讀取數據的長度。FileGet
會讀取 結構的元素,就像是個別讀取,不同之處在於元素之間沒有邊框間距。 在磁碟上,以) 寫入FilePut
的使用者定義類型 (動態陣列前面會加上長度等於 2 加上維度數目 8 倍的描述元: (2 + 8 * NumberOfDimensions) 。 函式中FileOpen
子句所RecordLength
指定的記錄長度必須大於或等於讀取個別專案所需的所有位元組總和。 這包括任何陣列及其描述元。 屬性VBFixedString
可以套用至結構中的字串字段,以指出寫入磁碟時字元串的大小。
二進位模式
對於以 Binary
模式開啟的 Random
檔案,大部分的模式規則都會套用,但有一些例外。 在模式中開啟的 Binary
檔案,下列規則與模式的規則 Random
不同:
函
RecordLength
式中的FileOpen
子句沒有任何作用。FileGet
連續讀取磁碟的所有變數;也就是說,不需在記錄之間填補。對於結構中陣列以外的任何陣列,
FileGet
則只會讀取數據。 未讀取描述項。FileGet
會讀取非結構元素的可變長度字元串,而不需要預期雙位元組長度描述元。 讀取的位元組數目等於字串中已經的字元數。重要
使用
FileGet
函式從檔案讀取需要Read
從 FileIOPermissionAccess 列舉存取。
另請參閱
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- 在 Visual Basic 中讀取檔案
- 在 Visual Basic 中寫入檔案
適用於
FileGet(Int32, Single, Int64)
將開放磁碟檔案的資料讀取到變數中。 相較於 FileGet
,My
功能可提升檔案 I/O 作業的產能和效能。 如需詳細資訊,請參閱FileSystem。
public static void FileGet (int FileNumber, ref float Value, long RecordNumber = -1);
static member FileGet : int * single * int64 -> unit
Public Sub FileGet (FileNumber As Integer, ByRef Value As Single, Optional RecordNumber As Long = -1)
參數
- FileNumber
- Int32
必要。 任何有效的檔案數目。
- Value
- Single
必要。 有效的變數名稱,資料將讀取至其中。
- RecordNumber
- Int64
選擇性。 要開始讀取的資料錄數目 (Random
模式檔案) 或位元組數目 (Binary
模式檔案)。
例外狀況
RecordNumber
< 1 且不等於 -1。
檔案模式無效。
備註
FileGet
只有在和 Binary
模式中Random
才有效。
使用 FileGet
讀取的數據通常會使用 FilePut
寫入檔案。
檔案中的第一筆記錄或位元組位於位置 1、第二筆記錄或位元組位於位置 2,依此類移。 如果您省略 RecordNumber
,則會讀取最後 FileGet
一筆或 FilePut
函式之後的下一筆記錄或位元組, (或最後一 Seek
個函式所指向) 。
重要
從檔案讀取時,請勿根據擴展名來決定檔案的內容。 例如,名為 Form1.vb 的檔案可能不是 Visual Basic 原始程式檔。
隨機模式
針對以模式開啟的 Random
檔案,適用下列規則:
如果讀取的數據長度小於函式子句
FileOpen
中指定的RecordLength
長度,則會FileGet
讀取記錄長度界限的後續記錄。 一筆記錄結尾與下一筆記錄開頭之間的空間會填補檔案緩衝區的現有內容。 由於無法以任何確定性來判斷填補數據量,因此最好讓記錄長度符合所讀取數據的長度。根據預設,如果要讀取的變數是字串,
FileGet
則會讀取包含字元串長度的雙位元組描述元,然後讀取進入變數的數據。 因此,函式 子句FileOpen
所RecordLength
指定的記錄長度至少必須大於字串的實際長度兩個字節。 Visual Basic 6.0 和舊版支援固定長度字元串;當放入檔案時,不會寫入長度描述項。 如果您想要讀取不含描述元的字串,您應該傳遞True
至StringIsFixedLength
參數,而所讀取的字串應該是正確的長度。如果要讀取的變數是陣列,您可以選擇是否要讀取陣列大小和維度的描述項。 若要撰寫描述項目,請將
ArrayIsDynamic
參數設定為True
。 讀取陣列時,您必須符合寫入數位的方式。 如果是以描述元撰寫的,您必須讀取描述元。 如果未使用描述項,傳入數位FileGet
的大小和界限會決定要讀取的內容。描述項會指定陣列的順位、大小和每個順位的下限。 其長度等於 2 加上維度數目的 8 倍: (2 + 8 * NumberOfDimensions) 。 函式中
RecordLength
FileOpen
參數所指定的記錄長度必須大於或等於寫入陣列數據和陣列描述元所需的所有位元組總和。 例如,當陣列寫入磁碟時,下列陣列宣告需要 218 個字節。Dim MyArray(4, 9) As Integer
218 個字節的散發方式如下:
描述元的 18 個字節: (2 + 8 * 2)
數據的 200 個字節: (5 * 10 * 4) 。
如果要讀取的變數是其他類型的變數, (不是可變長度字串或物件) ,
FileGet
則只會讀取變數數據。 函式中FileOpen
子句所RecordLength
指定的記錄長度必須大於或等於所讀取數據的長度。FileGet
會讀取 結構的元素,就像是個別讀取,不同之處在於元素之間沒有邊框間距。 在磁碟上,以) 寫入FilePut
的使用者定義類型 (動態陣列前面會加上長度等於 2 加上維度數目 8 倍的描述元: (2 + 8 * NumberOfDimensions) 。 函式中FileOpen
子句所RecordLength
指定的記錄長度必須大於或等於讀取個別專案所需的所有位元組總和。 這包括任何陣列及其描述元。 屬性VBFixedString
可以套用至結構中的字串字段,以指出寫入磁碟時字元串的大小。
二進位模式
對於以 Binary
模式開啟的 Random
檔案,大部分的模式規則都會套用,但有一些例外。 在模式中開啟的 Binary
檔案,下列規則與模式的規則 Random
不同:
函
RecordLength
式中的FileOpen
子句沒有任何作用。FileGet
連續讀取磁碟的所有變數;也就是說,不需在記錄之間填補。對於結構中陣列以外的任何陣列,
FileGet
則只會讀取數據。 未讀取描述項。FileGet
會讀取非結構元素的可變長度字元串,而不需要預期雙位元組長度描述元。 讀取的位元組數目等於字串中已經的字元數。重要
使用
FileGet
函式從檔案讀取需要Read
從 FileIOPermissionAccess 列舉存取。
另請參閱
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- 在 Visual Basic 中讀取檔案
- 在 Visual Basic 中寫入檔案
適用於
FileGet(Int32, Int64, Int64)
將開放磁碟檔案的資料讀取到變數中。 相較於 FileGet
,My
功能可提升檔案 I/O 作業的產能和效能。 如需詳細資訊,請參閱FileSystem。
public static void FileGet (int FileNumber, ref long Value, long RecordNumber = -1);
static member FileGet : int * int64 * int64 -> unit
Public Sub FileGet (FileNumber As Integer, ByRef Value As Long, Optional RecordNumber As Long = -1)
參數
- FileNumber
- Int32
必要。 任何有效的檔案數目。
- Value
- Int64
必要。 有效的變數名稱,資料將讀取至其中。
- RecordNumber
- Int64
選擇性。 要開始讀取的資料錄數目 (Random
模式檔案) 或位元組數目 (Binary
模式檔案)。
例外狀況
RecordNumber
< 1 且不等於 -1。
檔案模式無效。
備註
FileGet
只有在和 Binary
模式中Random
才有效。
使用 FileGet
讀取的數據通常會使用 FilePut
寫入檔案。
檔案中的第一筆記錄或位元組位於位置 1、第二筆記錄或位元組位於位置 2,依此類移。 如果您省略 RecordNumber
,則會讀取最後 FileGet
一筆或 FilePut
函式之後的下一筆記錄或位元組, (或最後一 Seek
個函式所指向) 。
重要
從檔案讀取時,請勿根據擴展名來決定檔案的內容。 例如,名為 Form1.vb 的檔案可能不是 Visual Basic 原始程式檔。
隨機模式
針對以模式開啟的 Random
檔案,適用下列規則:
如果讀取的數據長度小於函式子句
FileOpen
中指定的RecordLength
長度,則會FileGet
讀取記錄長度界限的後續記錄。 一筆記錄結尾與下一筆記錄開頭之間的空間會填補檔案緩衝區的現有內容。 由於無法以任何確定性來判斷填補數據量,因此最好讓記錄長度符合所讀取數據的長度。根據預設,如果要讀取的變數是字串,
FileGet
則會讀取包含字元串長度的雙位元組描述元,然後讀取進入變數的數據。 因此,函式 子句FileOpen
所RecordLength
指定的記錄長度至少必須大於字串的實際長度兩個字節。 Visual Basic 6.0 和舊版支援固定長度字元串;當放入檔案時,不會寫入長度描述項。 如果您想要讀取不含描述元的字串,您應該傳遞True
至StringIsFixedLength
參數,而所讀取的字串應該是正確的長度。如果要讀取的變數是陣列,您可以選擇是否要讀取陣列大小和維度的描述項。 若要撰寫描述項目,請將
ArrayIsDynamic
參數設定為True
。 讀取陣列時,您必須符合寫入數位的方式。 如果是以描述元撰寫的,您必須讀取描述元。 如果未使用描述項,傳入數位FileGet
的大小和界限會決定要讀取的內容。描述項會指定陣列的順位、大小和每個順位的下限。 其長度等於 2 加上維度數目的 8 倍: (2 + 8 * NumberOfDimensions) 。 函式中
RecordLength
FileOpen
參數所指定的記錄長度必須大於或等於寫入陣列數據和陣列描述元所需的所有位元組總和。 例如,當陣列寫入磁碟時,下列陣列宣告需要 218 個字節。Dim MyArray(4, 9) As Integer
218 個字節的散發方式如下:
描述元的 18 個字節: (2 + 8 * 2)
數據的 200 個字節: (5 * 10 * 4) 。
如果要讀取的變數是其他類型的變數, (不是可變長度字串或物件) ,
FileGet
則只會讀取變數數據。 函式中FileOpen
子句所RecordLength
指定的記錄長度必須大於或等於所讀取數據的長度。FileGet
會讀取 結構的元素,就像是個別讀取,不同之處在於元素之間沒有邊框間距。 在磁碟上,以) 寫入FilePut
的使用者定義類型 (動態陣列前面會加上長度等於 2 加上維度數目 8 倍的描述元: (2 + 8 * NumberOfDimensions) 。 函式中FileOpen
子句所RecordLength
指定的記錄長度必須大於或等於讀取個別專案所需的所有位元組總和。 這包括任何陣列及其描述元。 屬性VBFixedString
可以套用至結構中的字串字段,以指出寫入磁碟時字元串的大小。
二進位模式
對於以 Binary
模式開啟的 Random
檔案,大部分的模式規則都會套用,但有一些例外。 在模式中開啟的 Binary
檔案,下列規則與模式的規則 Random
不同:
函
RecordLength
式中的FileOpen
子句沒有任何作用。FileGet
連續讀取磁碟的所有變數;也就是說,不需在記錄之間填補。對於結構中陣列以外的任何陣列,
FileGet
則只會讀取數據。 未讀取描述項。FileGet
會讀取非結構元素的可變長度字元串,而不需要預期雙位元組長度描述元。 讀取的位元組數目等於字串中已經的字元數。重要
使用
FileGet
函式從檔案讀取需要Read
從 FileIOPermissionAccess 列舉存取。
另請參閱
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- 在 Visual Basic 中讀取檔案
- 在 Visual Basic 中寫入檔案
適用於
FileGet(Int32, Int32, Int64)
將開放磁碟檔案的資料讀取到變數中。 相較於 FileGet
,My
功能可提升檔案 I/O 作業的產能和效能。 如需詳細資訊,請參閱FileSystem。
public static void FileGet (int FileNumber, ref int Value, long RecordNumber = -1);
static member FileGet : int * int * int64 -> unit
Public Sub FileGet (FileNumber As Integer, ByRef Value As Integer, Optional RecordNumber As Long = -1)
參數
- FileNumber
- Int32
必要。 任何有效的檔案數目。
- Value
- Int32
必要。 有效的變數名稱,資料將讀取至其中。
- RecordNumber
- Int64
選擇性。 要開始讀取的資料錄數目 (Random
模式檔案) 或位元組數目 (Binary
模式檔案)。
例外狀況
RecordNumber
< 1 且不等於 -1。
檔案模式無效。
備註
FileGet
只有在和 Binary
模式中Random
才有效。
使用 FileGet
讀取的數據通常會使用 FilePut
寫入檔案。
檔案中的第一筆記錄或位元組位於位置 1、第二筆記錄或位元組位於位置 2,依此類移。 如果您省略 RecordNumber
,則會讀取最後 FileGet
一筆或 FilePut
函式之後的下一筆記錄或位元組, (或最後一 Seek
個函式所指向) 。
重要
從檔案讀取時,請勿根據擴展名來決定檔案的內容。 例如,名為 Form1.vb 的檔案可能不是 Visual Basic 原始程式檔。
隨機模式
針對以模式開啟的 Random
檔案,適用下列規則:
如果讀取的數據長度小於函式子句
FileOpen
中指定的RecordLength
長度,則會FileGet
讀取記錄長度界限的後續記錄。 一筆記錄結尾與下一筆記錄開頭之間的空間會填補檔案緩衝區的現有內容。 由於無法以任何確定性來判斷填補數據量,因此最好讓記錄長度符合所讀取數據的長度。根據預設,如果要讀取的變數是字串,
FileGet
則會讀取包含字元串長度的雙位元組描述元,然後讀取進入變數的數據。 因此,函式 子句FileOpen
所RecordLength
指定的記錄長度至少必須大於字串的實際長度兩個字節。 Visual Basic 6.0 和舊版支援固定長度字元串;當放入檔案時,不會寫入長度描述項。 如果您想要讀取不含描述元的字串,您應該傳遞True
至StringIsFixedLength
參數,而所讀取的字串應該是正確的長度。如果要讀取的變數是陣列,您可以選擇是否要讀取陣列大小和維度的描述項。 若要撰寫描述項目,請將
ArrayIsDynamic
參數設定為True
。 讀取陣列時,您必須符合寫入數位的方式。 如果是以描述元撰寫的,您必須讀取描述元。 如果未使用描述項,傳入數位FileGet
的大小和界限會決定要讀取的內容。描述項會指定陣列的順位、大小和每個順位的下限。 其長度等於 2 加上維度數目的 8 倍: (2 + 8 * NumberOfDimensions) 。 函式中
RecordLength
FileOpen
參數所指定的記錄長度必須大於或等於寫入陣列數據和陣列描述元所需的所有位元組總和。 例如,當陣列寫入磁碟時,下列陣列宣告需要 218 個字節。Dim MyArray(4, 9) As Integer
218 個字節的散發方式如下:
描述元的 18 個字節: (2 + 8 * 2)
數據的 200 個字節: (5 * 10 * 4) 。
如果要讀取的變數是其他類型的變數, (不是可變長度字串或物件) ,
FileGet
則只會讀取變數數據。 函式中FileOpen
子句所RecordLength
指定的記錄長度必須大於或等於所讀取數據的長度。FileGet
會讀取 結構的元素,就像是個別讀取,不同之處在於元素之間沒有邊框間距。 在磁碟上,以) 寫入FilePut
的使用者定義類型 (動態陣列前面會加上長度等於 2 加上維度數目 8 倍的描述元: (2 + 8 * NumberOfDimensions) 。 函式中FileOpen
子句所RecordLength
指定的記錄長度必須大於或等於讀取個別專案所需的所有位元組總和。 這包括任何陣列及其描述元。 屬性VBFixedString
可以套用至結構中的字串字段,以指出寫入磁碟時字元串的大小。
二進位模式
對於以 Binary
模式開啟的 Random
檔案,大部分的模式規則都會套用,但有一些例外。 在模式中開啟的 Binary
檔案,下列規則與模式的規則 Random
不同:
函
RecordLength
式中的FileOpen
子句沒有任何作用。FileGet
連續讀取磁碟的所有變數;也就是說,不需在記錄之間填補。對於結構中陣列以外的任何陣列,
FileGet
則只會讀取數據。 未讀取描述項。FileGet
會讀取非結構元素的可變長度字元串,而不需要預期雙位元組長度描述元。 讀取的位元組數目等於字串中已經的字元數。重要
使用
FileGet
函式從檔案讀取需要Read
從 FileIOPermissionAccess 列舉存取。
另請參閱
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- 在 Visual Basic 中讀取檔案
- 在 Visual Basic 中寫入檔案
適用於
FileGet(Int32, Decimal, Int64)
將開放磁碟檔案的資料讀取到變數中。 相較於 FileGet
,My
功能可提升檔案 I/O 作業的產能和效能。 如需詳細資訊,請參閱FileSystem。
public static void FileGet (int FileNumber, ref decimal Value, long RecordNumber = -1);
static member FileGet : int * decimal * int64 -> unit
Public Sub FileGet (FileNumber As Integer, ByRef Value As Decimal, Optional RecordNumber As Long = -1)
參數
- FileNumber
- Int32
必要。 任何有效的檔案數目。
- Value
- Decimal
必要。 有效的變數名稱,資料將讀取至其中。
- RecordNumber
- Int64
選擇性。 要開始讀取的資料錄數目 (Random
模式檔案) 或位元組數目 (Binary
模式檔案)。
例外狀況
RecordNumber
< 1 且不等於 -1。
檔案模式無效。
備註
FileGet
只有在和 Binary
模式中Random
才有效。
使用 FileGet
讀取的數據通常會使用 FilePut
寫入檔案。
檔案中的第一筆記錄或位元組位於位置 1、第二筆記錄或位元組位於位置 2,依此類移。 如果您省略 RecordNumber
,則會讀取最後 FileGet
一筆或 FilePut
函式之後的下一筆記錄或位元組, (或最後一 Seek
個函式所指向) 。
重要
從檔案讀取時,請勿根據擴展名來決定檔案的內容。 例如,名為 Form1.vb 的檔案可能不是 Visual Basic 原始程式檔。
隨機模式
針對以模式開啟的 Random
檔案,適用下列規則:
如果讀取的數據長度小於函式子句
FileOpen
中指定的RecordLength
長度,則會FileGet
讀取記錄長度界限的後續記錄。 一筆記錄結尾與下一筆記錄開頭之間的空間會填補檔案緩衝區的現有內容。 由於無法以任何確定性來判斷填補數據量,因此最好讓記錄長度符合所讀取數據的長度。根據預設,如果要讀取的變數是字串,
FileGet
則會讀取包含字元串長度的雙位元組描述元,然後讀取進入變數的數據。 因此,函式 子句FileOpen
所RecordLength
指定的記錄長度至少必須大於字串的實際長度兩個字節。 Visual Basic 6.0 和舊版支援固定長度字元串;當放入檔案時,不會寫入長度描述項。 如果您想要讀取不含描述元的字串,您應該傳遞True
至StringIsFixedLength
參數,而所讀取的字串應該是正確的長度。如果要讀取的變數是陣列,您可以選擇是否要讀取陣列大小和維度的描述項。 若要撰寫描述項目,請將
ArrayIsDynamic
參數設定為True
。 讀取陣列時,您必須符合寫入數位的方式。 如果是以描述元撰寫的,您必須讀取描述元。 如果未使用描述項,傳入數位FileGet
的大小和界限會決定要讀取的內容。描述項會指定陣列的順位、大小和每個順位的下限。 其長度等於 2 加上維度數目的 8 倍: (2 + 8 * NumberOfDimensions) 。 函式中
RecordLength
FileOpen
參數所指定的記錄長度必須大於或等於寫入陣列數據和陣列描述元所需的所有位元組總和。 例如,當陣列寫入磁碟時,下列陣列宣告需要 218 個字節。Dim MyArray(4, 9) As Integer
218 個字節的散發方式如下:
描述元的 18 個字節: (2 + 8 * 2)
數據的 200 個字節: (5 * 10 * 4) 。
如果要讀取的變數是其他類型的變數, (不是可變長度字串或物件) ,
FileGet
則只會讀取變數數據。 函式中FileOpen
子句所RecordLength
指定的記錄長度必須大於或等於所讀取數據的長度。FileGet
會讀取 結構的元素,就像是個別讀取,不同之處在於元素之間沒有邊框間距。 在磁碟上,以) 寫入FilePut
的使用者定義類型 (動態陣列前面會加上長度等於 2 加上維度數目 8 倍的描述元: (2 + 8 * NumberOfDimensions) 。 函式中FileOpen
子句所RecordLength
指定的記錄長度必須大於或等於讀取個別專案所需的所有位元組總和。 這包括任何陣列及其描述元。 屬性VBFixedString
可以套用至結構中的字串字段,以指出寫入磁碟時字元串的大小。
二進位模式
對於以 Binary
模式開啟的 Random
檔案,大部分的模式規則都會套用,但有一些例外。 在模式中開啟的 Binary
檔案,下列規則與模式的規則 Random
不同:
函
RecordLength
式中的FileOpen
子句沒有任何作用。FileGet
連續讀取磁碟的所有變數;也就是說,不需在記錄之間填補。對於結構中陣列以外的任何陣列,
FileGet
則只會讀取數據。 未讀取描述項。FileGet
會讀取非結構元素的可變長度字元串,而不需要預期雙位元組長度描述元。 讀取的位元組數目等於字串中已經的字元數。重要
使用
FileGet
函式從檔案讀取需要Read
從 FileIOPermissionAccess 列舉存取。
另請參閱
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- 在 Visual Basic 中讀取檔案
- 在 Visual Basic 中寫入檔案
適用於
FileGet(Int32, Double, Int64)
將開放磁碟檔案的資料讀取到變數中。 相較於 FileGet
,My
功能可提升檔案 I/O 作業的產能和效能。 如需詳細資訊,請參閱FileSystem。
public static void FileGet (int FileNumber, ref double Value, long RecordNumber = -1);
static member FileGet : int * double * int64 -> unit
Public Sub FileGet (FileNumber As Integer, ByRef Value As Double, Optional RecordNumber As Long = -1)
參數
- FileNumber
- Int32
必要。 任何有效的檔案數目。
- Value
- Double
必要。 有效的變數名稱,資料將讀取至其中。
- RecordNumber
- Int64
選擇性。 要開始讀取的資料錄數目 (Random
模式檔案) 或位元組數目 (Binary
模式檔案)。
例外狀況
RecordNumber
< 1 且不等於 -1。
檔案模式無效。
備註
FileGet
只有在和 Binary
模式中Random
才有效。
使用 FileGet
讀取的數據通常會使用 FilePut
寫入檔案。
檔案中的第一筆記錄或位元組位於位置 1、第二筆記錄或位元組位於位置 2,依此類移。 如果您省略 RecordNumber
,則會讀取最後 FileGet
一筆或 FilePut
函式之後的下一筆記錄或位元組, (或最後一 Seek
個函式所指向) 。
重要
從檔案讀取時,請勿根據擴展名來決定檔案的內容。 例如,名為 Form1.vb 的檔案可能不是 Visual Basic 原始程式檔。
隨機模式
針對以模式開啟的 Random
檔案,適用下列規則:
如果讀取的數據長度小於函式子句
FileOpen
中指定的RecordLength
長度,則會FileGet
讀取記錄長度界限的後續記錄。 一筆記錄結尾與下一筆記錄開頭之間的空間會填補檔案緩衝區的現有內容。 由於無法以任何確定性來判斷填補數據量,因此最好讓記錄長度符合所讀取數據的長度。根據預設,如果要讀取的變數是字串,
FileGet
則會讀取包含字元串長度的雙位元組描述元,然後讀取進入變數的數據。 因此,函式 子句FileOpen
所RecordLength
指定的記錄長度至少必須大於字串的實際長度兩個字節。 Visual Basic 6.0 和舊版支援固定長度字元串;當放入檔案時,不會寫入長度描述項。 如果您想要讀取不含描述元的字串,您應該傳遞True
至StringIsFixedLength
參數,而所讀取的字串應該是正確的長度。如果要讀取的變數是陣列,您可以選擇是否要讀取陣列大小和維度的描述項。 若要撰寫描述項目,請將
ArrayIsDynamic
參數設定為True
。 讀取陣列時,您必須符合寫入數位的方式。 如果是以描述元撰寫的,您必須讀取描述元。 如果未使用描述項,傳入數位FileGet
的大小和界限會決定要讀取的內容。描述項會指定陣列的順位、大小和每個順位的下限。 其長度等於 2 加上維度數目的 8 倍: (2 + 8 * NumberOfDimensions) 。 函式中
RecordLength
FileOpen
參數所指定的記錄長度必須大於或等於寫入陣列數據和陣列描述元所需的所有位元組總和。 例如,當陣列寫入磁碟時,下列陣列宣告需要 218 個字節。Dim MyArray(4, 9) As Integer
218 個字節的散發方式如下:
描述元的 18 個字節: (2 + 8 * 2)
數據的 200 個字節: (5 * 10 * 4) 。
如果要讀取的變數是其他類型的變數, (不是可變長度字串或物件) ,
FileGet
則只會讀取變數數據。 函式中FileOpen
子句所RecordLength
指定的記錄長度必須大於或等於所讀取數據的長度。FileGet
會讀取 結構的元素,就像是個別讀取,不同之處在於元素之間沒有邊框間距。 在磁碟上,以) 寫入FilePut
的使用者定義類型 (動態陣列前面會加上長度等於 2 加上維度數目 8 倍的描述元: (2 + 8 * NumberOfDimensions) 。 函式中FileOpen
子句所RecordLength
指定的記錄長度必須大於或等於讀取個別專案所需的所有位元組總和。 這包括任何陣列及其描述元。 屬性VBFixedString
可以套用至結構中的字串字段,以指出寫入磁碟時字元串的大小。
二進位模式
對於以 Binary
模式開啟的 Random
檔案,大部分的模式規則都會套用,但有一些例外。 在模式中開啟的 Binary
檔案,下列規則與模式的規則 Random
不同:
函
RecordLength
式中的FileOpen
子句沒有任何作用。FileGet
連續讀取磁碟的所有變數;也就是說,不需在記錄之間填補。對於結構中陣列以外的任何陣列,
FileGet
則只會讀取數據。 未讀取描述項。FileGet
會讀取非結構元素的可變長度字元串,而不需要預期雙位元組長度描述元。 讀取的位元組數目等於字串中已經的字元數。重要
使用
FileGet
函式從檔案讀取需要Read
從 FileIOPermissionAccess 列舉存取。
另請參閱
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- 在 Visual Basic 中讀取檔案
- 在 Visual Basic 中寫入檔案
適用於
FileGet(Int32, DateTime, Int64)
將開放磁碟檔案的資料讀取到變數中。 相較於 FileGet
,My
功能可提升檔案 I/O 作業的產能和效能。 如需詳細資訊,請參閱FileSystem。
public static void FileGet (int FileNumber, ref DateTime Value, long RecordNumber = -1);
static member FileGet : int * DateTime * int64 -> unit
Public Sub FileGet (FileNumber As Integer, ByRef Value As DateTime, Optional RecordNumber As Long = -1)
參數
- FileNumber
- Int32
必要。 任何有效的檔案數目。
- Value
- DateTime
必要。 有效的變數名稱,資料將讀取至其中。
- RecordNumber
- Int64
選擇性。 要開始讀取的資料錄數目 (Random
模式檔案) 或位元組數目 (Binary
模式檔案)。
例外狀況
RecordNumber
< 1 且不等於 -1。
檔案模式無效。
備註
FileGet
只有在和 Binary
模式中Random
才有效。
使用 FileGet
讀取的數據通常會寫入具有的 FilePut
檔案。
檔案中的第一筆記錄或位元組位於位置 1、第二筆記錄或位元組位於位置 2,依此類移。 如果您省略 RecordNumber
,則會讀取最後 FileGet
一筆或 FilePut
函式之後的下一筆記錄或位元組, (或最後一 Seek
個函式所指向) 。
重要
從檔案讀取時,請勿根據擴展名來決定檔案的內容。 例如,名為 Form1.vb 的檔案可能不是 Visual Basic 原始程式檔。
隨機模式
針對以模式開啟的 Random
檔案,適用下列規則:
如果讀取的數據長度小於函式子句
FileOpen
中指定的RecordLength
長度,則會FileGet
讀取記錄長度界限的後續記錄。 一筆記錄結尾與下一筆記錄開頭之間的空間會填補檔案緩衝區的現有內容。 由於無法以任何確定性來判斷填補數據量,因此最好讓記錄長度符合所讀取數據的長度。根據預設,如果要讀取的變數是字串,
FileGet
則會讀取包含字元串長度的雙位元組描述元,然後讀取進入變數的數據。 因此,函式 子句FileOpen
所RecordLength
指定的記錄長度至少必須大於字串的實際長度兩個字節。 Visual Basic 6.0 和舊版支援固定長度字元串;當放入檔案時,不會寫入長度描述項。 如果您想要讀取不含描述元的字串,您應該傳遞True
至StringIsFixedLength
參數,而所讀取的字串應該是正確的長度。如果要讀取的變數是陣列,您可以選擇是否要讀取陣列大小和維度的描述項。 若要撰寫描述項目,請將
ArrayIsDynamic
參數設定為True
。 讀取陣列時,您必須符合寫入數位的方式。 如果是以描述元撰寫的,您必須讀取描述元。 如果未使用描述項,傳入數位FileGet
的大小和界限會決定要讀取的內容。描述項會指定陣列的順位、大小和每個順位的下限。 其長度等於 2 加上維度數目的 8 倍: (2 + 8 * NumberOfDimensions) 。 函式中
RecordLength
FileOpen
參數所指定的記錄長度必須大於或等於寫入陣列數據和陣列描述元所需的所有位元組總和。 例如,當陣列寫入磁碟時,下列陣列宣告需要 218 個字節。Dim MyArray(4, 9) As Integer
218 個字節的散發方式如下:
描述元的 18 個字節: (2 + 8 * 2)
數據的 200 個字節: (5 * 10 * 4) 。
如果要讀取的變數是其他類型的變數, (不是可變長度字串或物件) ,
FileGet
則只會讀取變數數據。 函式中FileOpen
子句所RecordLength
指定的記錄長度必須大於或等於所讀取數據的長度。FileGet
會讀取 結構的元素,就像是個別讀取,不同之處在於元素之間沒有邊框間距。 在磁碟上,以) 寫入FilePut
的使用者定義類型 (動態陣列前面會加上長度等於 2 加上維度數目 8 倍的描述元: (2 + 8 * NumberOfDimensions) 。 函式中FileOpen
子句所RecordLength
指定的記錄長度必須大於或等於讀取個別專案所需的所有位元組總和。 這包括任何陣列及其描述元。 屬性VBFixedString
可以套用至結構中的字串字段,以指出寫入磁碟時字元串的大小。
二進位模式
對於以 Binary
模式開啟的 Random
檔案,大部分的模式規則都會套用,但有一些例外。 在模式中開啟的 Binary
檔案,下列規則與模式的規則 Random
不同:
函
RecordLength
式中的FileOpen
子句沒有任何作用。FileGet
連續讀取磁碟的所有變數;也就是說,不需在記錄之間填補。對於結構中陣列以外的任何陣列,
FileGet
則只會讀取數據。 未讀取描述項。FileGet
會讀取非結構元素的可變長度字元串,而不需要預期雙位元組長度描述元。 讀取的位元組數目等於字串中已經的字元數。重要
使用
FileGet
函式從檔案讀取需要Read
從 FileIOPermissionAccess 列舉存取。
另請參閱
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- 在 Visual Basic 中讀取檔案
- 在 Visual Basic 中寫入檔案
適用於
FileGet(Int32, Char, Int64)
將開放磁碟檔案的資料讀取到變數中。 相較於 FileGet
,My
功能可提升檔案 I/O 作業的產能和效能。 如需詳細資訊,請參閱FileSystem。
public static void FileGet (int FileNumber, ref char Value, long RecordNumber = -1);
static member FileGet : int * char * int64 -> unit
Public Sub FileGet (FileNumber As Integer, ByRef Value As Char, Optional RecordNumber As Long = -1)
參數
- FileNumber
- Int32
必要。 任何有效的檔案數目。
- Value
- Char
必要。 有效的變數名稱,資料將讀取至其中。
- RecordNumber
- Int64
選擇性。 要開始讀取的資料錄數目 (Random
模式檔案) 或位元組數目 (Binary
模式檔案)。
例外狀況
RecordNumber
< 1 且不等於 -1。
檔案模式無效。
備註
FileGet
只有在和 Binary
模式中Random
才有效。
使用 FileGet
讀取的數據通常會寫入具有的 FilePut
檔案。
檔案中的第一筆記錄或位元組位於位置 1、第二筆記錄或位元組位於位置 2,依此類移。 如果您省略 RecordNumber
,則會讀取最後 FileGet
一筆或 FilePut
函式之後的下一筆記錄或位元組, (或最後一 Seek
個函式所指向) 。
重要
從檔案讀取時,請勿根據擴展名來決定檔案的內容。 例如,名為 Form1.vb 的檔案可能不是 Visual Basic 原始程式檔。
隨機模式
針對以模式開啟的 Random
檔案,適用下列規則:
如果讀取的數據長度小於函式子句
FileOpen
中指定的RecordLength
長度,則會FileGet
讀取記錄長度界限的後續記錄。 一筆記錄結尾與下一筆記錄開頭之間的空間會填補檔案緩衝區的現有內容。 由於無法以任何確定性來判斷填補數據量,因此最好讓記錄長度符合所讀取數據的長度。根據預設,如果要讀取的變數是字串,
FileGet
則會讀取包含字元串長度的雙位元組描述元,然後讀取進入變數的數據。 因此,函式 子句FileOpen
所RecordLength
指定的記錄長度至少必須大於字串的實際長度兩個字節。 Visual Basic 6.0 和舊版支援固定長度字元串;當放入檔案時,不會寫入長度描述項。 如果您想要讀取不含描述元的字串,您應該傳遞True
至StringIsFixedLength
參數,而所讀取的字串應該是正確的長度。如果要讀取的變數是陣列,您可以選擇是否要讀取陣列大小和維度的描述項。 若要撰寫描述項目,請將
ArrayIsDynamic
參數設定為True
。 讀取陣列時,您必須符合寫入數位的方式。 如果是以描述元撰寫的,您必須讀取描述元。 如果未使用描述項,傳入數位FileGet
的大小和界限會決定要讀取的內容。描述項會指定陣列的順位、大小和每個順位的下限。 其長度等於 2 加上維度數目的 8 倍: (2 + 8 * NumberOfDimensions) 。 函式中
RecordLength
FileOpen
參數所指定的記錄長度必須大於或等於寫入陣列數據和陣列描述元所需的所有位元組總和。 例如,當陣列寫入磁碟時,下列陣列宣告需要 218 個字節。Dim MyArray(4, 9) As Integer
218 個字節的散發方式如下:
描述元的 18 個字節: (2 + 8 * 2)
數據的 200 個字節: (5 * 10 * 4) 。
如果要讀取的變數是其他類型的變數, (不是可變長度字串或物件) ,
FileGet
則只會讀取變數數據。 函式中FileOpen
子句所RecordLength
指定的記錄長度必須大於或等於所讀取數據的長度。FileGet
會讀取 結構的元素,就像是個別讀取,不同之處在於元素之間沒有邊框間距。 在磁碟上,以) 寫入FilePut
的使用者定義類型 (動態陣列前面會加上長度等於 2 加上維度數目 8 倍的描述元: (2 + 8 * NumberOfDimensions) 。 函式中FileOpen
子句所RecordLength
指定的記錄長度必須大於或等於讀取個別專案所需的所有位元組總和。 這包括任何陣列及其描述元。 屬性VBFixedString
可以套用至結構中的字串字段,以指出寫入磁碟時字元串的大小。
二進位模式
對於以 Binary
模式開啟的 Random
檔案,大部分的模式規則都會套用,但有一些例外。 在模式中開啟的 Binary
檔案,下列規則與模式的規則 Random
不同:
函
RecordLength
式中的FileOpen
子句沒有任何作用。FileGet
連續讀取磁碟的所有變數;也就是說,不需在記錄之間填補。對於結構中陣列以外的任何陣列,
FileGet
則只會讀取數據。 未讀取描述項。FileGet
會讀取非結構元素的可變長度字元串,而不需要預期雙位元組長度描述元。 讀取的位元組數目等於字串中已經的字元數。重要
使用
FileGet
函式從檔案讀取需要Read
從 FileIOPermissionAccess 列舉存取。
另請參閱
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- 在 Visual Basic 中讀取檔案
- 在 Visual Basic 中寫入檔案
適用於
FileGet(Int32, Byte, Int64)
將開放磁碟檔案的資料讀取到變數中。 相較於 FileGet
,My
功能可提升檔案 I/O 作業的產能和效能。 如需詳細資訊,請參閱FileSystem。
public static void FileGet (int FileNumber, ref byte Value, long RecordNumber = -1);
static member FileGet : int * byte * int64 -> unit
Public Sub FileGet (FileNumber As Integer, ByRef Value As Byte, Optional RecordNumber As Long = -1)
參數
- FileNumber
- Int32
必要。 任何有效的檔案數目。
- Value
- Byte
必要。 有效的變數名稱,資料將讀取至其中。
- RecordNumber
- Int64
選擇性。 要開始讀取的資料錄數目 (Random
模式檔案) 或位元組數目 (Binary
模式檔案)。
例外狀況
RecordNumber
< 1 且不等於 -1。
檔案模式無效。
備註
FileGet
只有在和 Binary
模式中Random
才有效。
使用 FileGet
讀取的數據通常會寫入具有的 FilePut
檔案。
檔案中的第一筆記錄或位元組位於位置 1、第二筆記錄或位元組位於位置 2,依此類移。 如果您省略 RecordNumber
,則會讀取最後 FileGet
一筆或 FilePut
函式之後的下一筆記錄或位元組, (或最後一 Seek
個函式所指向) 。
重要
從檔案讀取時,請勿根據擴展名來決定檔案的內容。 例如,名為 Form1.vb 的檔案可能不是 Visual Basic 原始程式檔。
隨機模式
針對以模式開啟的 Random
檔案,適用下列規則:
如果讀取的數據長度小於函式子句
FileOpen
中指定的RecordLength
長度,則會FileGet
讀取記錄長度界限的後續記錄。 一筆記錄結尾與下一筆記錄開頭之間的空間會填補檔案緩衝區的現有內容。 由於無法以任何確定性來判斷填補數據量,因此最好讓記錄長度符合所讀取數據的長度。根據預設,如果要讀取的變數是字串,
FileGet
則會讀取包含字元串長度的雙位元組描述元,然後讀取進入變數的數據。 因此,函式 子句FileOpen
所RecordLength
指定的記錄長度至少必須大於字串的實際長度兩個字節。 Visual Basic 6.0 和舊版支援固定長度字元串;當放入檔案時,不會寫入長度描述項。 如果您想要讀取不含描述元的字串,您應該傳遞True
至StringIsFixedLength
參數,而所讀取的字串應該是正確的長度。如果要讀取的變數是陣列,您可以選擇是否要讀取陣列大小和維度的描述項。 若要撰寫描述項目,請將
ArrayIsDynamic
參數設定為True
。 讀取陣列時,您必須符合寫入數位的方式。 如果是以描述元撰寫的,您必須讀取描述元。 如果未使用描述項。 然後傳入陣列FileGet
的大小和界限會決定要讀取的內容。描述項會指定陣列的順位、大小和每個順位的下限。 其長度等於 2 加上維度數目的 8 倍: (2 + 8 * NumberOfDimensions) 。 函式中
RecordLength
FileOpen
參數所指定的記錄長度必須大於或等於寫入陣列數據和陣列描述元所需的所有位元組總和。 例如,當陣列寫入磁碟時,下列陣列宣告需要 218 個字節。Dim MyArray(4, 9) As Integer
218 個字節的散發方式如下:
描述元的 18 個字節: (2 + 8 * 2)
數據的 200 個字節: (5 * 10 * 4) 。
如果要讀取的變數是其他類型的變數, (不是可變長度字串或物件) ,
FileGet
則只會讀取變數數據。 函式中FileOpen
子句所RecordLength
指定的記錄長度必須大於或等於所讀取數據的長度。FileGet
會讀取 結構的元素,就像是個別讀取,不同之處在於元素之間沒有邊框間距。 在磁碟上,以) 寫入FilePut
的使用者定義類型 (動態陣列前面會加上長度等於 2 加上維度數目 8 倍的描述元: (2 + 8 * NumberOfDimensions) 。 函式中FileOpen
子句所RecordLength
指定的記錄長度必須大於或等於讀取個別專案所需的所有位元組總和。 這包括任何陣列及其描述元。 屬性VBFixedString
可以套用至結構中的字串字段,以指出寫入磁碟時字元串的大小。
二進位模式
對於以 Binary
模式開啟的 Random
檔案,大部分的模式規則都會套用,但有一些例外。 在模式中開啟的 Binary
檔案,下列規則與模式的規則 Random
不同:
函
RecordLength
式中的FileOpen
子句沒有任何作用。FileGet
連續讀取磁碟的所有變數;也就是說,不需在記錄之間填補。對於結構中陣列以外的任何陣列,
FileGet
則只會讀取數據。 未讀取描述項。FileGet
會讀取非結構元素的可變長度字元串,而不需要預期雙位元組長度描述元。 讀取的位元組數目等於字串中已經的字元數。重要
使用
FileGet
函式從檔案讀取需要Read
從 FileIOPermissionAccess 列舉存取。
另請參閱
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- 在 Visual Basic 中讀取檔案
- 在 Visual Basic 中寫入檔案
適用於
FileGet(Int32, Boolean, Int64)
將開放磁碟檔案的資料讀取到變數中。 相較於 FileGet
,My
功能可提升檔案 I/O 作業的產能和效能。 如需詳細資訊,請參閱FileSystem。
public static void FileGet (int FileNumber, ref bool Value, long RecordNumber = -1);
static member FileGet : int * bool * int64 -> unit
Public Sub FileGet (FileNumber As Integer, ByRef Value As Boolean, Optional RecordNumber As Long = -1)
參數
- FileNumber
- Int32
必要。 任何有效的檔案數目。
- Value
- Boolean
必要。 有效的變數名稱,資料將讀取至其中。
- RecordNumber
- Int64
選擇性。 要開始讀取的資料錄數目 (Random
模式檔案) 或位元組數目 (Binary
模式檔案)。
例外狀況
RecordNumber
< 1 且不等於 -1。
檔案模式無效。
備註
FileGet
只有在和 Binary
模式中Random
才有效。
使用 FileGet
讀取的數據通常會寫入具有的 FilePut
檔案。
檔案中的第一筆記錄或位元組位於位置 1、第二筆記錄或位元組位於位置 2,依此類移。 如果您省略 RecordNumber
,則會讀取最後 FileGet
一筆或 FilePut
函式之後的下一筆記錄或位元組, (或最後一 Seek
個函式所指向) 。
重要
從檔案讀取時,請勿根據擴展名來決定檔案的內容。 例如,名為 Form1.vb 的檔案可能不是 Visual Basic 原始程式檔。
隨機模式
針對以模式開啟的 Random
檔案,適用下列規則:
如果讀取的數據長度小於函式子句
FileOpen
中指定的RecordLength
長度,則會FileGet
讀取記錄長度界限的後續記錄。 一筆記錄結尾與下一筆記錄開頭之間的空間會填補檔案緩衝區的現有內容。 由於無法以任何確定性來判斷填補數據量,因此最好讓記錄長度符合所讀取數據的長度。根據預設,如果要讀取的變數是字串,
FileGet
則會讀取包含字元串長度的雙位元組描述元,然後讀取進入變數的數據。 因此,函式 子句FileOpen
所RecordLength
指定的記錄長度至少必須大於字串的實際長度兩個字節。 Visual Basic 6.0 和舊版支援固定長度字元串;當放入檔案時,不會寫入長度描述項。 如果您想要讀取不含描述元的字串,您應該傳遞True
至StringIsFixedLength
參數,而所讀取的字串應該是正確的長度。如果要讀取的變數是陣列,您可以選擇是否要讀取陣列大小和維度的描述項。 若要撰寫描述項目,請將
ArrayIsDynamic
參數設定為True
。 讀取陣列時,您必須符合寫入數位的方式。 如果是以描述元撰寫的,您必須讀取描述元。 如果未使用描述項,傳入數位FileGet
的大小和界限會決定要讀取的內容。描述項會指定陣列的順位、大小和每個順位的下限。 其長度等於 2 加上維度數目的 8 倍: (2 + 8 * NumberOfDimensions) 。 函式中
RecordLength
FileOpen
參數所指定的記錄長度必須大於或等於寫入陣列數據和陣列描述元所需的所有位元組總和。 例如,當陣列寫入磁碟時,下列陣列宣告需要 218 個字節。Dim MyArray(4, 9) As Integer
218 個字節的散發方式如下:
描述元的 18 個字節: (2 + 8 * 2)
數據的 200 個字節: (5 * 10 * 4) 。
如果要讀取的變數是其他類型的變數, (不是可變長度字串或物件) ,
FileGet
則只會讀取變數數據。 函式中FileOpen
子句所RecordLength
指定的記錄長度必須大於或等於所讀取數據的長度。FileGet
會讀取 結構的元素,就像是個別讀取,不同之處在於元素之間沒有邊框間距。 在磁碟上,以) 寫入FilePut
的使用者定義類型 (動態陣列前面會加上長度等於 2 加上維度數目 8 倍的描述元: (2 + 8 * NumberOfDimensions) 。 函式中FileOpen
子句所RecordLength
指定的記錄長度必須大於或等於讀取個別專案所需的所有位元組總和。 這包括任何陣列及其描述元。 屬性VBFixedString
可以套用至結構中的字串字段,以指出寫入磁碟時字元串的大小。
二進位模式
對於以 Binary
模式開啟的 Random
檔案,大部分的模式規則都會套用,但有一些例外。 在模式中開啟的 Binary
檔案,下列規則與模式的規則 Random
不同:
函
RecordLength
式中的FileOpen
子句沒有任何作用。FileGet
連續讀取磁碟的所有變數;也就是說,不需在記錄之間填補。對於結構中陣列以外的任何陣列,
FileGet
則只會讀取數據。 未讀取描述項。FileGet
會讀取非結構元素的可變長度字元串,而不需要預期雙位元組長度描述元。 讀取的位元組數目等於字串中已經的字元數。重要
使用
FileGet
函式從檔案讀取需要Read
從 FileIOPermissionAccess 列舉存取。
另請參閱
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- 在 Visual Basic 中讀取檔案
- 在 Visual Basic 中寫入檔案
適用於
FileGet(Int32, Int16, Int64)
將開放磁碟檔案的資料讀取到變數中。 相較於 FileGet
,My
功能可提升檔案 I/O 作業的產能和效能。 如需詳細資訊,請參閱FileSystem。
public static void FileGet (int FileNumber, ref short Value, long RecordNumber = -1);
static member FileGet : int * int16 * int64 -> unit
Public Sub FileGet (FileNumber As Integer, ByRef Value As Short, Optional RecordNumber As Long = -1)
參數
- FileNumber
- Int32
必要。 任何有效的檔案數目。
- Value
- Int16
必要。 有效的變數名稱,資料將讀取至其中。
- RecordNumber
- Int64
選擇性。 要開始讀取的資料錄數目 (Random
模式檔案) 或位元組數目 (Binary
模式檔案)。
例外狀況
RecordNumber
< 1 且不等於 -1。
檔案模式無效。
備註
FileGet
只有在和 Binary
模式中Random
才有效。
使用 FileGet
讀取的數據通常會使用 FilePut
寫入檔案。
檔案中的第一筆記錄或位元組位於位置 1、第二筆記錄或位元組位於位置 2,依此類故。 如果您省略 RecordNumber
,則會讀取最後 FileGet
一個或 FilePut
函數 (或最後一個函式所指向 Seek
的下一筆記錄或位元組) 。
重要
從檔案讀取時,請勿根據擴展名來決定檔案的內容。 例如,名為 Form1.vb 的檔案可能不是 Visual Basic 原始程式檔。
隨機模式
針對以 Random
模式開啟的檔案,適用下列規則:
如果讀取的數據長度小於函式子句
FileOpen
中指定的RecordLength
長度,FileGet
則會讀取記錄長度界限的後續記錄。 一筆記錄結尾與下一筆記錄開頭之間的空間會填補檔案緩衝區的現有內容。 由於無法以任何確定性判斷填補數據量,因此通常最好讓記錄長度符合所讀取數據的長度。根據預設,如果所讀取的變數是字串,則會讀取包含字元串長度的雙位元組描述元,
FileGet
然後讀取進入變數的數據。 因此,函式子句FileOpen
所RecordLength
指定的記錄長度必須至少為兩個大於字元串實際長度的位元組。 Visual Basic 6.0 和舊版支援固定長度字元串;放置至檔案時,不會寫入長度描述元。 如果您想要讀取不含描述元的字串,您應該傳遞True
至StringIsFixedLength
參數,而您讀取的字串應該是正確的長度。如果要讀取的變數是陣列,您可以選擇是否要讀取陣列大小和維度的描述元。 若要寫入描述元,請將
ArrayIsDynamic
參數設定為True
。 讀取陣列時,您必須符合寫入數位的方式。 如果是使用描述元撰寫的,您必須讀取描述元。 如果未使用描述元,則傳入FileGet
數位的大小和界限會決定要讀取的內容。描述項會指定陣列的排名、大小,以及每個排名的下限。 其長度等於 2 加上維度數目的 8 倍: (2 + 8 * NumberOfDimensions) 。 函式中
FileOpen
參數指定的RecordLength
記錄長度必須大於或等於寫入陣列資料和陣列描述元所需的所有位元組總和。 例如,當陣列寫入磁碟時,下列陣列宣告需要 218 個字節。Dim MyArray(4, 9) As Integer
218 個字節的散發方式如下:
描述項的 18 個字節: (2 + 8 * 2)
數據的 200 個字節: (5 * 10 * 4) 。
如果要讀取的變數是任何其他類型的變數, (不是可變長度字串或物件) ,
FileGet
則只會讀取變數數據。 函式中FileOpen
子句指定的RecordLength
記錄長度必須大於或等於所讀取數據的長度。FileGet
會讀取結構的專案,就像是個別讀取每個元素一樣,不同之處在於元素之間沒有填補。 在磁碟上,以) 寫入FilePut
的使用者定義類型 (動態陣列前面會加上長度等於 2 加上維度數目的 8 倍: (2 + 8 * NumberOfDimensions) 。 函式中FileOpen
子句指定的RecordLength
記錄長度必須大於或等於讀取個別專案所需的所有位元組總和。 這包括任何陣列及其描述項。 屬性VBFixedString
可以套用至結構中的字串字段,以指出寫入磁碟時字元串的大小。
二進位模式
對於以 Binary
模式開啟的 Random
檔案,大部分模式規則都會套用,但有一些例外。 在模式中 Binary
開啟的檔案下列規則與模式的規則 Random
不同:
函
RecordLength
式中的FileOpen
子句沒有任何作用。FileGet
連續讀取磁碟的所有變數;也就是說,在記錄之間不填補。對於結構中陣列以外的任何陣列,
FileGet
則只會讀取數據。 沒有讀取描述項。FileGet
會讀取非結構元素的可變長度字元串,而不需要預期雙位元組長度描述元。 讀取的位元組數目等於字串中已經有的字元數。重要
使用
FileGet
函式從檔案讀取需要Read
從列舉存取 FileIOPermissionAccess 。
另請參閱
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- 在 Visual Basic 中讀取檔案
- 在 Visual Basic 中寫入檔案