码迷,mamicode.com
首页 > 其他好文 > 详细

字符串转成16进制函数

时间:2017-01-03 15:29:38      阅读:181      评论:0      收藏:0      [点我收藏+]

标签:sci   target   ret   函数   sdn   bin   replace   track   blank   

/****************************

  字符串转成16进制

  作者:不得闲

  QQ: 75492895

  Email: appleak46@yahoo.com.cn

****************************/

--创建函数(suiyunonghen(不得闲))

Create Function VarCharToHex(@Str Varchar(400))

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

 

Go

--测试示例

select dbo.VarCharToHex(‘叶子‘)

 

--运行结果

/*

D2B6D7D3

*/

 
 

字符串转成16进制函数

标签:sci   target   ret   函数   sdn   bin   replace   track   blank   

原文地址:http://www.cnblogs.com/accumulater/p/6244652.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!