ONLINE HELP
 WINDEVWEBDEV AND WINDEV MOBILE

Help / WLanguage / WLanguage functions / Standard functions / String functions
  • Creating an identifier
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReports and QueriesUser code (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Browser code
WINDEV Mobile
AndroidAndroid Widget iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Others
Stored procedures
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.
Example
// Button click
s is Buffer = fLoadText(EDT_FileName)
EDT_Dump = BufferToHexa(s)
s is Unicode string = "abdcefghijkl"
Trace(BufferToHexa(s))
// display:
// 61 00 62 00 64 00 63 00 65 00 66 00 67 00 68 
// 69 00 6A 00 6B 00 6C 00
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
Component: wd300std.dll
Minimum version required
  • Version 17
This page is also available for…
Comments
Click [Add] to post a comment

Last update: 06/14/2024

Send a report | Local help