字节流、字符串、16进制字符串转换__Java(转)
- /**
- * @Package:
- * @ClassName:TypeConversion
- * @Description:字节流、字符串、16进制字符串转换
- * @author:xk
- * @date:Jan 8, 2013 5:00:08 PM
- */
- public class TypeConversion {
- /**
- * @Title:bytes2HexString
- * @Description:字节数组转16进制字符串
- * @param b
- * 字节数组
- * @return 16进制字符串
- * @throws
- */
- public static String bytes2HexString(byte[] b) {
- StringBuffer result = new StringBuffer();
- String hex;
- for (int i = 0; i < b.length; i++) {
- hex = Integer.toHexString(b[i] & 0xFF);
- if (hex.length() == 1) {
- hex = '0' + hex;
- }
- result.append(hex.toUpperCase());
- }
- return result.toString();
- }
- /**
- * @Title:hexString2Bytes
- * @Description:16进制字符串转字节数组
- * @param src
- * 16进制字符串
- * @return 字节数组
- * @throws
- */
- public static byte[] hexString2Bytes(String src) {
- int l = src.length() / 2;
- byte[] ret = new byte[l];
- for (int i = 0; i < l; i++) {
- ret[i] = (byte) Integer
- .valueOf(src.substring(i * 2, i * 2 + 2), 16).byteValue();
- }
- return ret;
- }
- /**
- * @Title:string2HexString
- * @Description:字符串转16进制字符串
- * @param strPart
- * 字符串
- * @return 16进制字符串
- * @throws
- */
- public static String string2HexString(String strPart) {
- StringBuffer hexString = new StringBuffer();
- for (int i = 0; i < strPart.length(); i++) {
- int ch = (int) strPart.charAt(i);
- String strHex = Integer.toHexString(ch);
- hexString.append(strHex);
- }
- return hexString.toString();
- }
- /**
- * @Title:hexString2String
- * @Description:16进制字符串转字符串
- * @param src
- * 16进制字符串
- * @return 字节数组
- * @throws
- */
- public static String hexString2String(String src) {
- String temp = "";
- for (int i = 0; i < src.length() / 2; i++) {
- temp = temp
- + (char) Integer.valueOf(src.substring(i * 2, i * 2 + 2),
- 16).byteValue();
- }
- return temp;
- }
- /**
- * @Title:char2Byte
- * @Description:字符转成字节数据char-->integer-->byte
- * @param src
- * @return
- * @throws
- */
- public static Byte char2Byte(Character src) {
- return Integer.valueOf((int)src).byteValue();
- }
- /**
- * @Title:intToHexString
- * @Description:10进制数字转成16进制
- * @param a 转化数据
- * @param len 占用字节数
- * @return
- * @throws
- */
- private static String intToHexString(int a,int len){
- len<<=1;
- String hexString = Integer.toHexString(a);
- int b = len -hexString.length();
- if(b>0){
- for(int i=0;i<b;i++) {
- hexString = "0" + hexString;
- }
- }
- return hexString;
- }
- public static void main(String args[]) {
- System.out.println(hexString2String("3133383131313536373838"));
- }
- }
转自:http://hunray.iteye.com/blog/1849585
字节流、字符串、16进制字符串转换__Java(转)的更多相关文章
- 字节流、字符串、16进制字符串转换__java
package com.dvn.li.main; /** * @Package: * @ClassName:TypeConversion * @Description:字节流.字符串.16进制字符串转 ...
- Java中byte与16进制字符串的互相转换
* Convert byte[] to hex string.这里我们可以将byte转换成int,然后利用Integer.toHexString(int)来转换成16进制字符串. * @param s ...
- iOS 16进制字符串转换成int十进制
NSRange rangeErr; rangeErr.location = 6; rangeErr.length = 2; NSString *strings = [value substringWi ...
- Java中将16进制字符串转换成汉字
技术交流群:233513714 /** * 将16进制字符串转换成汉字 * @param str * @return */ public static String deUnicode(String ...
- [转]Java中byte与16进制字符串的互相转换
Java中byte用二进制表示占用8位,而我们知道16进制的每个字符需要用4位二进制位来表示(23 + 22 + 21 + 20 = 15),所以我们就可以把每个byte转换成两个相应的16进制字符, ...
- C# byte[] 转换16进制字符串
1.byte[] 转换16进制字符串 1.1 BitConverter方式 var str = DateTime.Now.ToString(); var encode = Encoding.UTF8; ...
- C# 校验并转换 16 进制字符串到字节数组
问题 最近在进行硬件上位机开发的时候,经常会遇到将 16 进制字符串转换为 byte[] 的情况,除了这种需求以外,还需要判定一个字符串是否是有效的 16 进制数据. 解决 字符串转 byte[] 的 ...
- 字节数组(byte[])与16进制字符串转换
/// <summary> /// 转换扩展类 /// </summary> public static class ConvertExtend { /// <summa ...
- C++实现16进制字符串转换成int整形值
开发中经常需要把16进制字符串转换成整形,写了个个代码供大家参考下: #include <stdio.h> #include <string.h> //字符转换成整形 int ...
随机推荐
- Gitlab的Gravatar头像无法显示的问题
通过gitlab搭建的git仓库,由于Gravatar被墙了,导致Gravatar头像无法显示.总觉得怪怪的. 社区版gitlab解决办法: vi /var/opt/gitlab/gitlab-rai ...
- Struts2常用标签
Struts2常用标签总结 一 介绍 1.Struts2的作用 Struts2标签库提供了主题.模板支持,极大地简化了视图页面的编写,而且,struts2的主题.模板都提供了很好的扩展性.实现了更好的 ...
- Linux/Unix命令
MAC 中自定义环境变量 打开:nano .bash_profile 查看:cat text 保存退出:Ctrl+C,Y #在.bash_profile 中添加tree alias tree=&quo ...
- Effective C++ -----条款47:请使用traits classes表现类型信息
Traits classes使得“类型相关信息”在编译期可用.它们以template和“templates特化”完成实现. 整合重载技术(overloading)后,traits classes有可能 ...
- backup daily
#!/bin/bash # #This is a test in book.thanks for Richard Blum. #Please put this file to crontab,than ...
- 用Mybatis返回Map,List<Map>
返回Map,Mybatis配置如下 : <select id="getCountyHashMap" resultType="java.util.HashMap&qu ...
- Parallels Destop软件配置
Parallels Destop个人感觉最好用的mac虚拟win软件 http://pan.baidu.com/s/1jHFwIGm 密码:ab21百度云下载(或者下载自己百度云的) 安装方法: 1. ...
- 【leetcode】Palindrome Partitioning II(hard) ☆
Given a string s, partition s such that every substring of the partition is a palindrome. Return the ...
- addsubview跟insertsubview的区别
子视图是以栈的方式存放的. 每次addsubview时都是在最后面添加. 每次在addsubview前和addsubview后可以看看[self.view.subViews count]: 你看看你的 ...
- java获取手机号归属地
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import ...