BIN2L()
Convert signed long encoded bytes into Harbour numeric
- Syntax
-
- BIN2L( <cBuffer> ) --> nNumber
- Arguments
-
- <cBuffer> is a character string that contain 32 bit encoded signed long integer (least significant byte first). The first four bytes are taken into account, the rest if any are ignored.
- Returns
-
- BIN2L() return numeric integer (or 0 if <cBuffer> is not a string).
- Description
-
- BIN2L() is one of the low level binary conversion functions, those functions convert between Harbour numeric and a character representation of numeric value. BIN2L() take four bytes of encoded 32 bit signed long integer and convert it into standard Harbour numeric value.
- You might ask what is the need for such functions, well, first of all it allow you to read/write information from/to a binary file (like extracting information from DBF header), it is also a useful way to share information from source other than Harbour (C for instance).
- BIN2L() is the opposite of L2BIN()
Examples
// Show number of records in DBF
FUNCTION main()
LOCAL nHandle, cBuffer := space( 4 )
nHandle := fopen( "test.dbf" )
IF nHandle > 0
fseek( nHandle, 4 )
fread( nHandle, @cBuffer, 4 )
? "Number of records in file:", BIN2L( cBuffer )
fclose( nHandle )
ELSE
? "Can not open file"
ENDIF
RETURN NIL
- Status
- Ready
- Compliance
-
- BIN2L() works exactly like CA-Clipper's BIN2L()
- Files
-
- Library is rtl
- See Also