Functions.FRead Method (IntPtr, Usual, DWord)
Read characters from a file into a buffer variable that is passed by reference.
XSharp.RT (in XSharp.RT.dll) Version: 2.18
Syntax Request Example
ptrHandle AS IntPtr,
cBufferVar REF USUAL,
dwBytes AS DWORD
) AS DWORD
public static uint FRead(
ref Usual cBufferVar,
- Type: IntPtr
The handle of the file to read from.
- Type: Usual
A variable used to store data read from the specified file.
If the length of cBufferVar is less than dwBytes, a new string whose length is the minimum of dwBytes and the remaining bytes in the file is allocated. cBufferVar must be passed by reference and, therefore, must be prefaced by the pass-by-reference operator (@).
- Type: DWord
The number of bytes to read into the buffer.
The number of bytes successfully read.
A return value less than dwBytes
or 0 indicates end-of-file or some other read error. FError() can be used to determine the specific error.
FReadText() is the same as FRead() except that an OEM to ANSI conversion is made if SetAnsi() is FALSE.
This function is included for compatibility. We do not recomment using static memory for file i/o operations.
We recommend that you use the function overload that takes a byte array parameter in stead.
This example uses FRead() after successfully opening a file to read 128 bytes into a buffer area:
1DEFINE F_BLOCK := 128
3cBuffer := Space(F_BLOCK)
4ptrHandle := FOpen("temp.txt")
5IF FError() != 0
6 ? DOSErrString(FError())
8 IF FReadText(ptrHandle, @cBuffer, F_BLOCK) <paramref name="" /> F_BLOCK
9 ? DOSErrString(FError())