SQL中十六进制和字符串之间的转换
Java中的转换非常简单便捷,但有时候需要在后台实现转换,这里我包装成函数。Mark一下
–字符串转十六进制
CREATE FUNCTION dbo.StrToHex(@str varchar(100))
RETURNS varchar(800)
AS
BEGIN
DECLARE @i INT,@Asi INT,@ModS INT,@res VARCHAR(800),@Len INT,@Cres VARCHAR(4),@tempstr VARBINARY(400)
SELECT @i = 1,@res=’’,@len=DATALENGTH(@str),@tempStr = CONVERT(VARBINARY,@str)
WHILE @i<=@len
BEGIN
SELECT @Asi = SUBSTRING(@tempstr,1,1),@Cres=’’
WHILE @Asi <> 0
BEGIN
SELECT @Mods = @Asi %16,
@Cres=CASE WHEN (@Mods > 9) THEN
CHAR(ASCII(‘A’)+@Mods-10)+@Cres
ELSE CAST(@Mods AS VARCHAR(4)) + @Cres
END,
@Asi = @Asi/16
END
SELECT @res = @res + @Cres +’ ',
@tempStr = SUBSTRING(@tempStr,2,@len-1),
@i = @i+1
END
return @res;
END
–十六进制转字符串
CREATE FUNCTION dbo.HexToStr(@str varchar(100))
RETURNS varchar(800)
AS
BEGIN
declare @Decimal varchar(max);
set @Decimal = @str;
declare @Hexadecimal varchar(max);
declare @String NVARCHAR(40)
set @Hexadecimal =(
SELECT
CAST(’’ as xml).value(‘xs:hexBinary( substring(sql:variable("@Decimal"), sql:column(“t.pos”)) )’, ‘varbinary(max)’)
from (select case substring(@Decimal, 1, 2)
WHEN ‘0x’ then 3 else 0 end) as t(pos)
)
SET @String = CONVERT(varchar(max), @Hexadecimal, 4);
return @String;
END
SQL中十六进制和字符串之间的转换相关推荐
- C++中数字与字符串之间的转换 scanf string总结(复习必读)
1 string的scanf读入操作 C++里面控制台输入直接使用cin操作就可以了:或者getline(istringstream,string); 字符和数字加减就是字符的ASCII码和数字直接加 ...
- java中数组和字符串之间的转换
java中对于数组和字符串之间的转换确实是一小的迷点. 字符串转为数组可以使用: char[] toCharArray() 将此字符串转换为一个新的字符数组. 数组转字符串: 可以直接使用new的方式 ...
- C++中数字与字符串之间的转换
1.字符串数字之间的转换 (1)string --> char * string str("OK"); char * p = str.c_str(); (2)ch ...
- 十六进制和字符串之间的转换
十六进制转换为字符串: 函数uti_hex2text功能为将hex字符以十六进制格式输出到字符串text中 int uti_hex2text(unsigned char *hex, int hex_l ...
- Python中数字和字符串之间的转换
数字转为字符串 这个相对比较简单 我们可以使用Python中的str函数直接转换 例如将123转换为'123' print(str(123)) 或者使用格式化 print('%s' %123) 字符串 ...
- java中日期与字符串之间的转换
import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; public cl ...
- Java中字节数组和十六进制字符串之间的转换
1. 概述 在本教程中,我们将看看将字节数组转换为十六进制字符串,反之亦然的不同方法. 我们还将了解转换机制并编写我们的实现来实现这一点. 2. 字节和十六进制之间的转换 首先,我们来看看字节和十六进 ...
- java中各进制之间的转换(十进制转十六进制、十进制转二进制、二进制转十进制、二进制转十六进制)...
在java编辑中有没有遇到经常需要进行java中各进制之间的转换(十进制转十六进制.十进制转二进制.二进制转十进制.二进制转十六进制)的事情呢?下面我们就来分析一下各自是怎么转换的: [java] / ...
- python中时间戳、字符串之间转换详解
[转载]python中时间戳.字符串之间转换详解 (2013-04-30 17:36:07) 转载▼ 标签: 转载 原文地址:python中时间戳.字符串之间转换详解作者:doris0920 1)秒数 ...
最新文章
- struts2 通配符简化配置
- 多线程编程之线程绑定处理器核
- 【开发工具】学习记录 初学MATLAB
- UNIX再学习 -- 函数 system
- C语言 二维数组复制、清零及打印显示
- Java上机操作练习题-助力期末
- 32查运行内存的map文件_linux内存管理
- Python应用实战-Python爬取4000+股票数据,并用plotly绘制了树状热力图(treemap)
- leetcode 172 python
- extern 与 #define 使用说明
- PPP认证原理和实验
- [51nod1232]完美数
- Ubuntu18.04 替换vscode字体
- Eclipse debug 的 drop to frame 的技巧
- iOS 横线贯穿文字
- access计算机二级大纲,计算机二级Access考试内容大纲
- 【ps功能精通】4.简单背景图片抠图
- ZJM要抵御宇宙射线
- 计算机功能及部件ppt,《计算机逻辑部件》PPT课件.ppt
- 直播还有哪些新想象?AI+直播打造更有趣的直播间