字符串和十六进制之间的转换方法

1.C#中的代码

/// <summary>
    /// <函数:Encode>
    /// 作用:将字符串内容转化为16进制数据编码,其逆过程是Decode
    /// 参数说明:
    /// strEncode 需要转化的原始字符串
    /// 转换的过程是直接把字符转换成Unicode字符,比如数字"3"-->0033,汉字"我"-->U+6211
    /// 函数decode的过程是encode的逆过程.
    /// </summary>
    /// <param name="strEncode"></param>
    /// <returns></returns>
    public static string Encode(string strEncode)
    {
      string strReturn = "";// 存储转换后的编码
      foreach (short shortx in strEncode.ToCharArray())
      {
        strReturn += shortx.ToString("X4");
      }
      return strReturn;
    }
    /// <summary>
    /// <函数:Decode>
    ///作用:将16进制数据编码转化为字符串,是Encode的逆过程
    /// </summary>
    /// <param name="strDecode"></param>
    /// <returns></returns>
    public static string Decode(string strDecode)
    {
      string sResult = "";
      for (int i = 0; i < strDecode.Length / 4; i++)
      {
        sResult += (char)short.Parse(strDecode.Substring(i * 4, 4), global::System.Globalization.NumberStyles.HexNumber);
      }
      return sResult;
    }

2.VB6中的代码

'*******************************************************************

'<函数:Encode>
'作用:将字符串内容转化为16进制数据编码,其逆过程是Decode
'参数说明:
'strSource 需要转化的原始字符串
Public Function Encode(strEncode As String) As String
  Dim i As Long
  Dim chrTmp$
  Dim ByteLower$, ByteUpper$
  Dim strReturn$ '存储转换后的编码
  
  For i = 1 To Len(strEncode)
    chrTmp$ = Mid(strEncode, i, 1)
    ByteLower$ = Hex$(AscB(MidB$(chrTmp$, 1, 1)))
    If Len(ByteLower$) = 1 Then ByteLower$ = "0" & ByteLower$
    ByteUpper$ = Hex$(AscB(MidB$(chrTmp$, 2, 1)))
    If Len(ByteUpper$) = 1 Then ByteUpper$ = "0" & ByteUpper$
    strReturn$ = strReturn$ & ByteUpper$ & ByteLower$
  Next
  
  Encode = strReturn$
End Function
'</函数:Encode>

时间: 2025-01-21 03:36:04

字符串和十六进制之间的转换方法的相关文章

javascript实现的字符串与十六进制表示字符串相互转换方法_javascript技巧

本文实例讲述了javascript实现的字符串与十六进制表示字符串相互转换方法.分享给大家供大家参考.具体如下: 之所以写这个,是因为发现SQL注入和XSS中经常利用十六进制表示的字符串,比如 SELECT CONCAT(0x68656c6c6f); 得到的是hello <!DOCTYPE html> <html> <head> <title>Hex-Char Bi-Converter</title> </head> <body

c++中数字与字符串之间的转换方法(推荐)_C 语言

1.字符串数字之间的转换 (1)string --> char * string str("OK"); char * p = str.c_str(); (2)char * -->string char *p = "OK"; string str(p); (3)char * -->CString char *p ="OK"; CString m_Str(p); //或者 CString m_Str; m_Str.Format(&q

CString字符串转换为十六进制字符串

最近在做项目时遇到这个问题,比如将汉字"冲"转换后为 "51B2",程序使用的是unicode字符集,下面是通过查资料后整理的解决方法: //--------------------------------------------------------------------- //函数:W2C //功能:将16位wchar_t转换为 8位char[2] //参数:w_cn为待转换的16位字符,c_cn[]为转换后的8位字符 //备注:wchar_t的高位字节应该

Groovy Tip 37 字符串和数字之间的转化

字符串和数字之间的转化是我们在项目中必然要碰到的问题,因为我们从用户界面取得的变量的值肯 定是字符串. 所以,我们在项目中经常要做的事情就是:第一,需要对用户的输入进行校验,以判断用户的输入是 否是一个数字:第二,如果是的话,我们则需要进一步把它转化为数字,以方便我们进行计算. 在Java语言中,我们要判断一个字符串是否是数字,基本上有两种方法,第一是直接进行转化,如果 有Exception抛出,则该字符串非我们所需要的数字.如下面就是一段判定一个字符串是否为整型数字的 代码: public s

JSON字符串和对象之间的转换详解

  这篇文章主要介绍了JSON字符串和对象之间的转换详解,需要的朋友可以参考下 JSON(JavaScript Object Notation) 是JavaScript编程语言的一个子集.正因JSON是JavaScript的一个子集,所以它可清晰的运用于此语言中. eval函数 JSON文本转换为对象 为了将JSON文本转换为对象,可以使用eval函数.eval函数调用JavaScript编辑器.由于JSON是JavaScript的子集,因此编译器将正确的解析文本并产生对象结构.文本必须括在括号

Java基本类型与byte数组之间相互转换方法_java

Java基本类型与byte数组之间相互转换,刚刚写的 package cn.teaey.utils; import java.nio.charset.Charset; public class ByteUtil { public static byte[] getBytes(short data) { byte[] bytes = new byte[2]; bytes[0] = (byte) (data & 0xff); bytes[1] = (byte) ((data & 0xff00)

Android字符串和十六进制相互转化出现的中文乱码问题_Android

废话不读说了,直接给大家贴代码了,代码附有注释,可以说明一切,本文写的不好,还请见谅. import java.io.ByteArrayOutputStream; /** * Created by Administrator on 2016/2/2. * -----------16进制和字符串互转--------- * ------------解决中文乱码问题--------- */ public class StringToSixthUtils { private static String

asp.net 10进制字符串转换为十六进制字符串

asp教程.net 10进制字符串转换为十六进制字符串 public string strtohex(string mstr) //返回处理后的十六进制字符串     {     return bitconverter.tostring(     asciiencoding.default.getbytes(mstr)).replace("-", " ");     } /* strtohex */    16进制字符串转换为10进制字符串  public stri

Android字符串和十六进制相互转化出现的中文乱码问题

废话不读说了,直接给大家贴代码了,代码附有注释,可以说明一切,本文写的不好,还请见谅. import java.io.ByteArrayOutputStream; /** * Created by Administrator on 2016/2/2. * -----------16进制和字符串互转--------- * ------------解决中文乱码问题--------- */ public class StringToSixthUtils { private static String