使用C#将字符串转换成十六进制以及其逆转换
2009-04-21 20:42 观海看云 阅读(3338) 评论(0) 编辑 收藏 举报使用C#将字符串转换成十六进制以及其逆转换
代码
主要转换代码来自Microsoft.VisualBasic类。下面的代码就是将字符串转换成十六进制格式。我们不能直接将所有的字符都转换成十六进制(例如:@#$%^&*()),因此我首先需要获得字符的ASCII码,然后再将ASCII码转换成十六进制。
//为此我用了一个while 循环
while (Data.Length > 0)
{
//首先用substring 来获取每一个字符
sValue= Data.Substring(0, 1).ToString()
//然后将字符转换成ascii
sValue= Strings.Asc(sValue)
//然后将ascii值转换成十六进制
sValue =Conversion.Hex(sValue)
//转换后就去掉该字符
Data = Data.Substring(1, Data.Length - 1);
sHex = sHex + sValue;
}
在这个应用中我使用了两个函数
Data_Hex_Asc(data)
这个函数负责将字符转换成十六进制
publicstring Data_Hex_Asc(ref string Data)
{
string Data1 = "";
string sData = "";
while (Data.Length > 0)
//first take two hex value using substring.
//then convert Hex value into ascii.
//then convert ascii value into character.
{
Data1 = System.Convert.ToChar(System.Convert.ToUInt32(Data.Substring(0, 2), 16)).ToString();
sData = sData + Data1;
Data = Data.Substring(2, Data.Length - 2);
}
return sData;
}
Data_Asc_Hex(data)
这个函数负责将十六进制转换成字符
publicstring Data_Asc_Hex(ref string Data)
{
//first take each charcter using substring.
//then convert character into ascii.
//then convert ascii value into Hex Format
string sValue;
string sHex = "";
while (Data.Length > 0)
{
sValue =Conversion.Hex(Strings.Asc(Data.Substring(0, 1).ToString()));
Data = Data.Substring(1, Data.Length - 1);
sHex = sHex + sValue;
}
return sHex;
}
主要转换代码来自
//
while
{
//
sValue= Data.Substring(0, 1).ToString()
//
sValue=
//
sValue =
//
Data = Data.Substring(1, Data.Length - 1);
sHex = sHex + sValue;
}
这个函数负责将字符转换成十六进制
public
{
//then convert Hex value into ascii.
//then convert ascii value into character.
Data1 = System.
sData = sData + Data1;
Data = Data.Substring(2, Data.Length - 2);
}
}
这个函数负责将十六进制转换成字符
public
{
//then convert character into ascii.
//then convert ascii value into Hex Format
{
sValue =
Data = Data.Substring(1, Data.Length - 1);
sHex = sHex + sValue;
}
}
作者:观海看云(个人开发历程知识库 - 博客园)
出处:http://www.cnblogs.com/zhangtao/
文章版权归本人所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
出处:http://www.cnblogs.com/zhangtao/
文章版权归本人所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器