Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(SQL Server) Encode Integer to Hex or Base64 using N BytesDemonstrates how to write an integer to N bytes (little-endian or big-endian) and return the bytes in any encoding such as hex, base64, etc. Note: This example requires Chilkat v9.5.0.77 or greater.
-- Important: See this note about string length limitations for strings returned by sp_OAMethod calls. -- CREATE PROCEDURE ChilkatSample AS BEGIN DECLARE @hr int DECLARE @crypt int -- Use "Chilkat_9_5_0.Crypt2" for versions of Chilkat < 10.0.0 EXEC @hr = sp_OACreate 'Chilkat.Crypt2', @crypt OUT IF @hr <> 0 BEGIN PRINT 'Failed to create ActiveX component' RETURN END -- 1193046 decimal is equal to 0x123456 hex. DECLARE @value int SELECT @value = 1193046 -- Write the integer in 8 bytes using little-endian byte-order and return as hex DECLARE @bLittleEndian int SELECT @bLittleEndian = 1 DECLARE @s nvarchar(4000) EXEC sp_OAMethod @crypt, 'EncodeInt', @s OUT, @value, 8, @bLittleEndian, 'hex' -- The output is: 5634120000000000 PRINT @s -- Now use big-endian... SELECT @bLittleEndian = 0 EXEC sp_OAMethod @crypt, 'EncodeInt', @s OUT, @value, 8, @bLittleEndian, 'hex' -- The output is: 0000000000123456 PRINT @s -- Instead of hex, get the 8 bytes using base64. EXEC sp_OAMethod @crypt, 'EncodeInt', @s OUT, @value, 8, @bLittleEndian, 'base64' -- The output is: AAAAAAASNFY= PRINT @s EXEC @hr = sp_OADestroy @crypt END GO |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.