/// <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. 《挑战程序设计竞赛》2.1 深度优先搜索 POJ2386 POJ1979 AOJ0118 AOJ0033 POJ3009

    POJ2386 Lake Counting Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 25366   Accepted: ...

  2. RabbitMQ指南之三:发布/订阅模式(Publish/Subscribe)

    在上一章中,我们创建了一个工作队列,工作队列模式的设想是每一条消息只会被转发给一个消费者.本章将会讲解完全不一样的场景: 我们会把一个消息转发给多个消费者,这种模式称之为发布-订阅模式. 为了阐述这个 ...

  3. 每个分片都是一个独立的Apache Lucene索引

    数据架构:索引+文档+文档类型+映射 [索引 文档 文档类型 映射] 索引index 对逻辑数据的逻辑存储:关系型数据库表.MongoDB集合.CouchDb数据库索引 index <---sh ...

  4. 任务03—简单程序测试及 GitHub Issues 的使用

    任务三主要是测试别人的代码找bug,和根据别人提出的bug修改自己的代码. 首先是测试的对象是jinlinchao的代码,根据他的代码很容易发现几个问题,一开始,我是打算,将发现的问题一个一个提上去, ...

  5. Oracle数据库使用Analyze提升sql性能

    Oracle数据库使用Analyze提升sql性能 如果你不使用analyze完成sql优化,将意味着:你拒绝使用数据库的查询优化器,也失去了使用优化连接的机会.假设你创建了一张拥有100万条记录的临 ...

  6. openssl之EVP系列之7---信息摘要算法结构概述

    openssl之EVP系列之7---信息摘要算法结构概述     ---依据openssl doc/crypto/EVP_DigestInit.pod翻译和自己的理解写成     (作者:Dragon ...

  7. 剑指offer 面试31题

    面试31题: 题目:栈的压入.弹出元素 题:输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序.假设压入栈的所有数字均不相等.例如序列1,2,3,4,5是某栈的压入顺序 ...

  8. C语言定义一个指针变量

    10.2.1 定义一个指针变量 对指针变量的定义包括三个内容: (1) 指针类型说明,即定义变量为一个指针变量: (2) 指针变量名: (3) 变量值(指针)所指向的变量的数据类型. 其一般形式为: ...

  9. WebMvcRegistrationsAdapter

    27.1.1. Spring MVC自动配置 如果希望使用自定义的RequestMappingHandlerMapping,RequestMappingHandlerAdapter,或Exceptio ...

  10. JAVA虚拟机(JVM)以及跨平台原理(JDK、JRE、JVM)

    相信大家已经了解到Java具有跨平台的特性,可以“一次编译,到处运行”,在Windows下编写的程序,无需任何修改就可以在Linux下运行,这是C和C++很难做到的. 那么,跨平台是怎样实现的呢?这就 ...