二进制样式的字符串与byte数组互转函数示例
开发时用到的方法,记录下:
/// <summary>
/// 测试方法
/// </summary>
private void TestFun()
{
Response.Write("=================<p>"); var b = BinaryStr2ByteArray("");
var str = ByteArray2BinaryStr(b);
str = str.TrimStart('');
Response.Write(str); Response.Write("<p>=================");
Response.End();
} /// <summary>
/// 二进制样式的字符串转byte数组
/// </summary>
/// <param name="binaryStr">二进制样式的字符串</param>
/// <returns></returns>
private byte[] BinaryStr2ByteArray(string binaryStr)
{
if (string.IsNullOrEmpty(binaryStr)) binaryStr = string.Empty; List<byte> byte_List = new List<byte>();
var strL = binaryStr.Length;
if (strL == )
byte_List.Add();
else if (strL > && strL <= )
byte_List.Add(Convert.ToByte(binaryStr, ));
else
{
var tempStr = string.Empty;
for (var i = strL; i > ; i = i - )
{
if (i - > )
tempStr = binaryStr.Substring(i - , );
else
tempStr = binaryStr.Substring(, i);
byte_List.Add(Convert.ToByte(tempStr, ));
}
} byte_List.Reverse();
return byte_List.ToArray();
} /// <summary>
/// byte数组转二进制样式的字符串
/// </summary>
/// <param name="byteArr">byte数组</param>
/// <returns></returns>
private string ByteArray2BinaryStr(byte[] byteArr)
{
List<string> strList = new List<string>();
var bl = byteArr.Length;
if (bl == )
return "";
else
{
var tempStr = string.Empty;
for (var i = ; i < bl; i++)
{
tempStr = Convert.ToString(byteArr[i], );
if (tempStr.Length < )
tempStr = tempStr.PadLeft(, '');
strList.Add(tempStr);
}
} return string.Join("", strList.ToArray());
} }
}
二进制样式的字符串与byte数组互转函数示例的更多相关文章
- Golang十六进制字符串和byte数组互转
Golang十六进制字符串和byte数组互转 需求 Golang十六进制字符串和byte数组互相转换,使用"encoding/hex"包 实现Demo package main i ...
- 字符串与byte数组转换
string weclome=""; byte[] data = new byte[1024]; //字符串转byte数组 data = Encoding.ASCII.GetByt ...
- java中 16进制字符串 与普通字符串 与 byte数组 之间的转化
方法依赖commons-codec包 maven的引入方式如下 <dependency> <groupId>commons-codec</groupId> < ...
- 16进制字符串和byte数组进行相互转换\将10进制转换为任意进制
16进制字符串和byte数组进行相互转换 简介 1个byte对应8个bit,16进制使用4个bit,所以一个byte转成16进制,占用两位. JAVA代码 private static final c ...
- 字符串、十六进制、byte数组互转
import java.io.ByteArrayOutputStream; public class HexUtil { /** * @param args */ public static void ...
- Java中字符串和byte数组之间的相互转换
1.将字符转换成byte数组 String str = "罗长"; byte[] sb = str.getBytes(); 2.将byte数组转换成字符 byte[] b={(by ...
- 图片和byte[]数组互转
一.图片转成byte[]数组. import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io ...
- int跟byte[]数组互转的方法,整数 + 浮点型
整数: int转byte数组 public static byte[] intToBytes2(int n){ ]; ;i < ;i++) { b[i]=(-i*)); } return b; ...
- 字符串和byte数组的相互转化
关于byte[]数组转十六进制字符串: public static String getHexString(byte[] b) throws Exception { String result = & ...
随机推荐
- Deepin 15.4 安装 Double Commander
参照官方教程,安装命令行如下: https://software.opensuse.org/download.html?project=home%3AAlexx2000&package=dou ...
- [CentOS7]redis设置开机启动,设置密码
简介 上篇文章介绍了如何安装redis,但每次重启服务器之后redis不会自启,这里将介绍如何进行自启设置,以及如何设置redis的密码,进行密码验证登陆. 上篇文章: Centos7安装Redis ...
- mount: wrong fs type, bad option, bad superblock
mount: wrong fs type, bad option, bad superblock on 125.64.41.244:/data/img, missing codepage ...
- HTTPS之acme.sh申请证书
1.关于let's encrypt和acme.sh的简介 1.1 let's encrypt Let's Encrypt是一个于2015年三季度推出的数字证书认证机构,旨在以自动化流程消除手动创建和安 ...
- shell编程学习笔记(八):Shell中的if条件判断
编程语言中都有条件判断,shell编程也不例外,下面我们来看一下shell中应该怎么使用if条件判断 以下蓝色字体部分为Linux命令,红色字体的内容为输出的内容: # cd /opt/scripts ...
- Android ANR的产生与分析
ANR即Application Not Responding应用无响应,一般在ANR的时候会弹出一个应用无响应对话框.也许有些开发者在使用某些手机开发中不在弹出应用无响应弹出框,特别是国产手机An ...
- maven创建helloword项目
[root@666 maven_work]# mvn archetype:create -DgroupId=helloword -DartifactId=helloworld [INFO] Scann ...
- SQL自动流水号函数
CREATE FUNCTION [dbo].[f_NextBH]() ) AS BEGIN ), ),),),) FROM Shop WITH(XLOCK,PAGLOCK)) END
- SQL Server 2016新特性:列存储索引新特性
SQL Server 2016新特性:列存储索引新特性 行存储表可以有一个可更新的列存储索引,之前非聚集的列存储索引是只读的. 非聚集的列存储索引支持筛选条件. 在内存优化表中可以有一个列存储索引,可 ...
- SQL Server 2016新特性:数据库级别配置
新的 ALTER DATABASE SCOPED CONFIGURATION (Transact-SQL) 用来配置数据库级别配置. 这个语句可以配置每个数据库的配置: 清理过程cache 设置MA ...