/// <summary>     /// 将 字符串 转成 二进制 “10011100000000011100011111111101”

/// </summary>

/// <param name="s"></param>

/// <returns></returns>

public static string bianma(string s)     {

byte[] data = Encoding.Unicode.GetBytes(s);

StringBuilder result = new StringBuilder(data.Length * 8);

foreach (byte b in data)

  {

    result.Append(Convert.ToString(b, 2).PadLeft(8, '0'));

  }

return result.ToString();

}

/// <summary>

/// 将二进制 “10011100000000011100011111111101” 转成 字符串

/// </summary>

/// <param name="s"></param>

/// <returns></returns>

public static string jiema(string s)     {

System.Text.RegularExpressions.CaptureCollection cs =  System.Text.RegularExpressions.Regex.Match(s, @"([01]{8})+").Groups[1].Captures;

byte[] data = new byte[cs.Count];

for (int i = 0; i < cs.Count; i++)

{

  data[i] = Convert.ToByte(cs[i].Value, 2);

}

return Encoding.Unicode.GetString(data, 0, data.Length);

}

/// <summary>

/// <函数:Decode>

///作用:将16进制数据编码转化为字符串

/// </summary>

/// <param name="strDecode"></param>

/// <returns></returns>

public string DecodeToString(string strDecode)

{

string sResult = "";

for (int i = 0; i < strDecode.Length / 4; i++)

{

  sResult += int.Parse(strDecode.Substring(i * 4, 4), global::System.Globalization.NumberStyles.HexNumber);

}

  return sResult;

}

/// <summary>

/// 将16进制数转为10进制数,并保留小数位数

/// </summary>

/// <param name="strDecode"></param>

/// <param name="i"></param>

/// <returns></returns>

public float DecodeToFloat(string strDecode, int i)

{

  int num = Convert.ToInt32(strDecode, 16);

  float result = (float.Parse(num.ToString())) / i;

  return result;

}

/// <summary>

/// 将16进制数转为10进制数整型

/// </summary>

/// <param name="strDecode"></param>

/// <returns></returns>

public int DecodeToInt(string strDecode)

{

  int result = Convert.ToInt32(strDecode, 16);

  return result;

}

/// <summary>

/// 获取数据源(读取记事本)

/// </summary>

/// <returns></returns>

public string GetData()

{

string effectiveData = "0";//有效数据

try

{

FileStream fs = new FileStream(filePath, FileMode.Open, FileAccess.Read, FileShare.Read);

StreamReader sr = new StreamReader(fs, Encoding.GetEncoding("gb2312"));

string strText = "";

while (true){

string strTemp = sr.ReadLine();

if (strTemp != null)

{

strText += strTemp;

continue;

}

else

{

break;

}

}

strText = strText.Trim();

sr.Close();

fs.Close();

return effectiveData;

}

/// <summary>
   /// 清空记事本内容
   /// </summary>
        public void ClearText()
        {
            //StreamWriter sw = new StreamWriter(filePath, false);
            //sw.Write(string.Empty);
            //sw.Close();
            //sw.Dispose();
            FileStream fs = new FileStream(filePath, FileMode.Create);
            fs.Close();
        }

C#二进制与字符串互转换,十六进制转换为字符串、float、int的更多相关文章

  1. SQL 行列转换数据转换为字符串

    行列转换,将列数据转换为字符串输出 ) SET @center_JZHW = ( SELECT DISTINCT STUFF( ( SELECT ',' + ce_code FROM ap_cente ...

  2. C#DateTime.ToString 格式化时间字符串和数值类型转换为字符串

    我们经常会遇到对时间进行转换,达到不同的显示效果,默认格式为:2006-6-6 14:33:34,如果要换成200606,06-2006,2006-6-6或更多的格式该怎么办呢?这里将要用到:Date ...

  3. python 字符串 大小写转换 以及一系列字符串操作技巧

    总结 capitalize() 首字母大写,其余全部小写 upper() 全转换成大写 lower() 全转换成小写 title() 标题首字大写,如"i love python" ...

  4. JS中将一个值转换为字符串的3种方法

    1.value.toString() 2."" + value 3.String(value) 第一种方法存在的问题是,它不能把null和undefined转换为字符串.还有第二种 ...

  5. c#实现16进制和字符串之间转换的代码

    以下示例演示如何执行下列任务: 获取字符串中每个字符的十六进制值. 获取与十六进制字符串中的每个值对应的字符. 将十六进制 string 转换为整型. 将十六进制 string 转换为浮点型. 将字节 ...

  6. python模块介绍- binascii:二进制和ASCII互转以及其他进制转换

    20.1 binascii:二进制和ASCII互转作用:二进制和ASCII互相转换. Python版本:1.5及以后版本 binascii模块包含很多在二进制和ASCII编码的二进制表示转换的方法.通 ...

  7. Python十六进制与字符串的转换

    电脑上装了Python2.7和3.3两个版本,平时运行程序包括在Eclipse里面调试都会使用2.7,但是由于某些原因在cmd命令行中输入python得到的解释器则是3.3, 一直没对此做处理,因为这 ...

  8. JAVA 十六进制与字符串的转换

    public static String toHexString(int i)以十六进制的无符号整数形式返回一个整数参数的字符串表示形式.如果参数为负,那么无符号整数值为参数加上 232:否则等于该参 ...

  9. java中json和字符串互转及日期转换 练习

    一:以下是用到的jar名称: commons-beanutils-1.6.jar commons-collections-3.2.1.jar commons-lang-2.6.jar commons- ...

随机推荐

  1. Directory和HashTable的区别

    1:单线程程序中推荐使用 Dictionary, 有泛型优势, 且读取速度较快, 容量利用更充分.2:多线程程序中推荐使用 Hashtable, 默认的 Hashtable 允许单线程写入, 多线程读 ...

  2. UI通过UISlider编写游戏第六感

    #import "RootViewController.h" @interface RootViewController (){    UILabel *scoreLabel; } ...

  3. Intellij IDEA快捷键及常见问题

    在java学习与开发中经常使用Intellij IDEA,为提高效率会使用快捷方式. 现在记录下经常使用到快捷键: Ctr l+ O 快速重写父类方法 Ctrl + Shift + / xml注释&l ...

  4. PowerPC架构与X86架构

    PowerPC架构 PowerPC是一种精简指令集(RISC)架构的中央处理器(CPU),其基本的设计源自IBM(国际商用机器公司)的POWER(Performance Optimized With ...

  5. jq cookie

    //$.cookie("xx");//读取xx的值 //$.cookie("xx","123");//设置xx的值为123 //$.cook ...

  6. dataTables的导出Excel功能

    Datatables它是一款基于jQuery表格插件,钟情于它操作dom的灵活.做后台的同学想必使用它能事半功倍,而且交互强.容易扩展. 我也是最近要做公司后台界面,表格涉及的很多,所以考虑使用DT, ...

  7. Android怎样在http头信息里设置參数

    在使用http请求server时经常要传递一些參数给server.如IMEI号.平台号.渠道号.client的版本等一些通用信息,像这些參数我们没有必要每次都拼在url后,我们能够统一加入到http头 ...

  8. ReentrantLock VS synchronized

    ReentrantLock 类实现了 Lock ,它拥有与 synchronized 相同的并发性和内存语义,但是添加了类似锁投票.定时锁等候和可中断锁等候的一些特性. 此外,它还提供了在激烈争用情况 ...

  9. Linux中的特殊字符

    单引号: 在单引号中所有的特殊字符都没有特殊含义 双引号: 在双引号中 $ ` \ 三个字符表示,调用变量的值.引用命令.转义,其他特殊字符均没有特殊含义 反引号: 用反引号括起来的内容被当作系统命令 ...

  10. SSH远程登陆docker容器

    环境: Ubuntu 16.04(mac osx的VMware Fushion环境) 任务: Ubuntu 16.04通过SSH登陆docker(目的是为了运行在其他服务器的Jenkins访问dock ...