1. /**
  2. * @Package:
  3. * @ClassName:TypeConversion
  4. * @Description:字节流、字符串、16进制字符串转换
  5. * @author:xk
  6. * @date:Jan 8, 2013 5:00:08 PM
  7. */
  8. public class TypeConversion {
  9. /**
  10. * @Title:bytes2HexString
  11. * @Description:字节数组转16进制字符串
  12. * @param b
  13. *            字节数组
  14. * @return 16进制字符串
  15. * @throws
  16. */
  17. public static String bytes2HexString(byte[] b) {
  18. StringBuffer result = new StringBuffer();
  19. String hex;
  20. for (int i = 0; i < b.length; i++) {
  21. hex = Integer.toHexString(b[i] & 0xFF);
  22. if (hex.length() == 1) {
  23. hex = '0' + hex;
  24. }
  25. result.append(hex.toUpperCase());
  26. }
  27. return result.toString();
  28. }
  29. /**
  30. * @Title:hexString2Bytes
  31. * @Description:16进制字符串转字节数组
  32. * @param src
  33. *            16进制字符串
  34. * @return 字节数组
  35. * @throws
  36. */
  37. public static byte[] hexString2Bytes(String src) {
  38. int l = src.length() / 2;
  39. byte[] ret = new byte[l];
  40. for (int i = 0; i < l; i++) {
  41. ret[i] = (byte) Integer
  42. .valueOf(src.substring(i * 2, i * 2 + 2), 16).byteValue();
  43. }
  44. return ret;
  45. }
  46. /**
  47. * @Title:string2HexString
  48. * @Description:字符串转16进制字符串
  49. * @param strPart
  50. *            字符串
  51. * @return 16进制字符串
  52. * @throws
  53. */
  54. public static String string2HexString(String strPart) {
  55. StringBuffer hexString = new StringBuffer();
  56. for (int i = 0; i < strPart.length(); i++) {
  57. int ch = (int) strPart.charAt(i);
  58. String strHex = Integer.toHexString(ch);
  59. hexString.append(strHex);
  60. }
  61. return hexString.toString();
  62. }
  63. /**
  64. * @Title:hexString2String
  65. * @Description:16进制字符串转字符串
  66. * @param src
  67. *            16进制字符串
  68. * @return 字节数组
  69. * @throws
  70. */
  71. public static String hexString2String(String src) {
  72. String temp = "";
  73. for (int i = 0; i < src.length() / 2; i++) {
  74. temp = temp
  75. + (char) Integer.valueOf(src.substring(i * 2, i * 2 + 2),
  76. 16).byteValue();
  77. }
  78. return temp;
  79. }
  80. /**
  81. * @Title:char2Byte
  82. * @Description:字符转成字节数据char-->integer-->byte
  83. * @param src
  84. * @return
  85. * @throws
  86. */
  87. public static Byte char2Byte(Character src) {
  88. return Integer.valueOf((int)src).byteValue();
  89. }
  90. /**
  91. * @Title:intToHexString
  92. * @Description:10进制数字转成16进制
  93. * @param a 转化数据
  94. * @param len 占用字节数
  95. * @return
  96. * @throws
  97. */
  98. private static String intToHexString(int a,int len){
  99. len<<=1;
  100. String hexString = Integer.toHexString(a);
  101. int b = len -hexString.length();
  102. if(b>0){
  103. for(int i=0;i<b;i++)  {
  104. hexString = "0" + hexString;
  105. }
  106. }
  107. return hexString;
  108. }
  109. public static void main(String args[]) {
  110. System.out.println(hexString2String("3133383131313536373838"));
  111. }
  112. }

转自:http://hunray.iteye.com/blog/1849585

字节流、字符串、16进制字符串转换__Java(转)的更多相关文章

  1. 字节流、字符串、16进制字符串转换__java

    package com.dvn.li.main; /** * @Package: * @ClassName:TypeConversion * @Description:字节流.字符串.16进制字符串转 ...

  2. Java中byte与16进制字符串的互相转换

    * Convert byte[] to hex string.这里我们可以将byte转换成int,然后利用Integer.toHexString(int)来转换成16进制字符串. * @param s ...

  3. iOS 16进制字符串转换成int十进制

    NSRange rangeErr; rangeErr.location = 6; rangeErr.length = 2; NSString *strings = [value substringWi ...

  4. Java中将16进制字符串转换成汉字

    技术交流群:233513714 /** * 将16进制字符串转换成汉字 * @param str * @return */ public static String deUnicode(String ...

  5. [转]Java中byte与16进制字符串的互相转换

    Java中byte用二进制表示占用8位,而我们知道16进制的每个字符需要用4位二进制位来表示(23 + 22 + 21 + 20 = 15),所以我们就可以把每个byte转换成两个相应的16进制字符, ...

  6. C# byte[] 转换16进制字符串

    1.byte[] 转换16进制字符串 1.1 BitConverter方式 var str = DateTime.Now.ToString(); var encode = Encoding.UTF8; ...

  7. C# 校验并转换 16 进制字符串到字节数组

    问题 最近在进行硬件上位机开发的时候,经常会遇到将 16 进制字符串转换为 byte[] 的情况,除了这种需求以外,还需要判定一个字符串是否是有效的 16 进制数据. 解决 字符串转 byte[] 的 ...

  8. 字节数组(byte[])与16进制字符串转换

    /// <summary> /// 转换扩展类 /// </summary> public static class ConvertExtend { /// <summa ...

  9. C++实现16进制字符串转换成int整形值

    开发中经常需要把16进制字符串转换成整形,写了个个代码供大家参考下: #include <stdio.h> #include <string.h> //字符转换成整形 int ...

随机推荐

  1. POJ 1330

    http://poj.org/problem?id=1330 题意:给你一棵树的上的两个点,要你求这两个点的最近的父亲节点. 第一行的是m案例数 第二行给你个N,代表有N-1种父子关系,其中a b,a ...

  2. hdu2196

    基本的树形dp,需要dfs三次,第一次求每个点最远的后代,第二次和第三次每个点的孩子分别从左到右和从右到左遍历. #include <cstdio> #include <vector ...

  3. bbs/贴吧/盖楼的技术实现(PHP)

    2015年3月5日 14:36:44 更新: 2015年7月18日 16:33:23 星期六 目标, 实现类似网易盖楼的功能, 但是不重复显示帖子 效果: * 回复 //1楼 ** 回复 //1楼的子 ...

  4. Zookeeper集群服务部署

    Zookeeper是一个分布式.开源的分布式应用程序协调服务,是Google的Chubby的开源实现,也是和Hadoop.Hbase相互配合的重要组件,作用就是为分布式应用程序提供一致性服务,包括配置 ...

  5. 细看INNODB数据落盘

    本文来自:沃趣科技 http://www.woqutech.com/?p=1459 1.  概述 前面很多大侠都分享过MySQL的InnoDB存储引擎将数据刷新的各种情况.我们这篇文章从InnoDB往 ...

  6. [转][Android]FragmentPagerAdapter与FragmentStatePagerAdapter使用详解与区别

    原文链接:http://blog.csdn.net/zhaokaiqiang1992 FragmentPagerAdapter是android-support-v4支持包里面出现的一个新的适配器,继承 ...

  7. 【leetcode】Binary Tree Maximum Path Sum (medium)

    Given a binary tree, find the maximum path sum. The path may start and end at any node in the tree. ...

  8. 【HOG】

    http://blog.csdn.net/masibuaa/article/details/12917961 把这份资料大概看完了 大概了解Hog了

  9. 【python】多进程学习

    来源:廖雪峰 讲解看来源吧 把例子记一下 1.用fork创建进程 import os print "Process (%s) start..." % os.getpid() pid ...

  10. maven编译时如何忽略单元测试

    共有两种解决办法 1.通过在命令行设置:-Dmaven.test.skip=true 如:mvn clean install tomcat:run -Dmaven.test.skip=true 2.通 ...