Encodes an array of bytes into a hexadecimal-encoded string.
Public Declare Function CNV_HexStrFromBytes Lib "diCrPKI.dll"
(ByVal strHex As String, ByVal nHexStrLen As Long,
ByRef lpData As Byte, ByVal nDataLen As Long) As Long
nRet = CNV_HexStrFromBytes(strHex, nHexStrLen, lpData(0), nDataLen)
long __stdcall CNV_HexStrFromBytes(char *szOutput, long nOutChars, const unsigned char *lpInput, long nInputLen);
If successful, the return value is the number of characters in the encoded string; otherwise it returns a negative error code.
Public Function cnvHexFromBytesMid
(abData() As Byte, nOffset As Long, nBytes As Long) As String
Public Function cnvHexStrFromB64Str
(szB64 As String) As String
Public Function cnvHexStrFromBytes
(lpData() As Byte) As String
Public Function cnvHexStrFromString
(szData As String) As String
Public Function cnvToHex
(lpData() As Byte) As String
static std::string dipki::Cnv::ToHex (const bvec_t &bv)
static std::string dipki::Cnv::ToHex (const std::string &s)
static Cnv.tohex(data)
Specify a zero nOutChars or an empty string for szOutput to find the required length of the output string. ANSI C users must add one to this value when allocating memory.
The input array may contain bytes of any value.
If vbNullString or an empty string (""
) is specified for szHex or zero for nHexStrLen,
the function will return
the maximum possible size of the encoded string. The final result may be smaller.
C/C++ programmers should add one to the returned length value when allocating memory.
The following wrapper function returns an encoded string directly.
Note that if abData
is empty then UBound(abData)
will raise a runtime error.
So we trap the error and return the default empty string.
Public Function cnvHexStrFromBytes(abData() As Byte) As String ' Returns hex string encoding of bytes in abData or empty string on error Dim strHex As String Dim nHexLen As Long Dim nDataLen As Long On Error GoTo CatchEmptyData nDataLen = UBound(abData) - LBound(abData) + 1 nHexLen = CNV_HexStrFromBytes(vbNullString, 0, abData(0), nDataLen) If nHexLen <= 0 Then Exit Function End If strHex = String$(nHexLen, " ") nHexLen = CNV_HexStrFromBytes(strHex, nHexLen, abData(0), nDataLen) If nHexLen <= 0 Then Exit Function End If cnvHexStrFromBytes = Left$(strHex, nHexLen) CatchEmptyData: End Function
CNV_BytesFromHexStr CNV_HexFilter