|
|
|
|
|
BufferToHexa (Function) In french: BufferVersHexa Converts a buffer to a hexadecimal string (e.g.,: "4A 5B 00"). This function is mainly used to check the content of a buffer byte by byte. Remark: To convert a hexadecimal string to a buffer, use HexaToBuffer.
// Button click s is Buffer = fLoadText(EDT_FileName) EDT_Dump = BufferToHexa(s)
s is Unicode string = "abdcefghijkl"
Trace(BufferToHexa(s))
s is UNICODE string = "Pletopabo" Â // Displays 50 00 6C 00 E9 00 74 00 6F 00 70 00 61 00 62 00<\r><\n>6F 00 Trace(BufferToHexa(s, 1)) // Displays 0050 006C 00E9 0074 006F 0070 0061 0062<\r><\n>006F Trace(BufferToHexa(s, 2)) // Displays 5000 6C00 E900 7400 6F00 7000 6100 6200<\r><\n>6F00 Trace(BufferToHexa(s, 2, BigEndian)) Â // Displays 006C0050 007400E9 0070006F 00620061<\r><\n>6F 00 Trace(BufferToHexa(s, 4)) // Displays 50006C00 E9007400 6F007000 61006200<\r><\n>6F 00 Trace(BufferToHexa(s, 4, BigEndian))
Syntax
<Result> = BufferToHexa(<Buffer to convert> [, <Nb bytes per word> [, <Nb bytes per line>]])
<Result>: Character string Character string in hexadecimal format. <Buffer to convert>: Buffer Buffer to use. This parameter can also correspond to an ANSI or Unicode string. <Nb bytes per word>: Integer or Integer constant Number of bytes per word. This parameter can be: - 1 (default value): the values are grouped by byte.
- 2: the values are grouped by word of 2 bytes.
- 4: the values are grouped by double word of 4 bytes.
- the NoGrouping constant: no grouping will be done. All hexadecimal codes will have no spaces. Example: 61002345A1.
<Nb bytes per line>: Integer or Integer constant Number of bytes before moving to the next line. - After each <Nb bytes per line> a Carriage Return (CR) is added to the result string.
- If <Nb bytes per line> is less than <Nb bytes per word>, the Carriage Return (CR) will be added every <Nb bytes per word>.
- If this parameter corresponds to the NoLine constant, all bytes will be positioned on the same line.
By default: - this number is equal to 16.
- the grouping is performed using the Little-Endian method (the least significant byte is stored first, like in x86).
- if <Nb bytes per word> is set to NoGrouping, then <Nb bytes per line> will correspond to the NoLine constant by default.
To group values in Big-Endian format: - use the BigEndian constant.
- add the BigEndian constant to the value of <Nb bytes per line>.
- Remark: the NoLine and BigEndian constants can be combined.
Remarks Creating an identifier The NoGrouping and NoLine constants are used to simplify the creation of an identifier from a buffer. Business / UI classification: Neutral code
This page is also available for…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|