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. Reorder array to construct the minimum number

    Construct minimum number by reordering a given non-negative integer array. Arrange them such that th ...

  2. Linq to 泛型集合查询集合包括大写M和年龄小于等于18

    #region Linq to 泛型集合查询集合包括大写M和年龄小于等于18            //List<Student> list = new List<Student&g ...

  3. mybaits in

    mybatis中的in: <select id="getByInventoryIds" resultMap="beanMap"> SELECT * ...

  4. sqlite ORMLite 框架应用

    bean package com.test.deamo.bean; import android.os.Parcel; import android.os.Parcelable; import com ...

  5. <转>VPN技术原理

    原文地址:VPN技术原理 VPN,Virtual Private Network(虚拟专用 网络),被定义为通过一个公用网络(通常是因特网)建立一个临时的.安全的连接,是一条穿过公用网络的安全.稳定的 ...

  6. ios bitcode 机制对 dsym 调试文件的影响

    今天想试试用dsym和crash文件跟踪crash信息,可是一直返回如下信息: Thread name: Dispatch queue: com.apple.main-thread Thread Cr ...

  7. C++库(TinyXML)

    C++库(TinyXML) 什么是XML? "当 XML(扩展标记语言)于 1998 年 2 月被引入软件工业界时,它给整个行业带来了一场风暴.有史以来第一次,这个世界拥有了一种用来结构化文 ...

  8. codeforces 515B. Drazil and His Happy Friends 解题报告

    题目链接:http://codeforces.com/problemset/problem/515/B 题目意思:有 n 个 boy 和 m 个 girl,有 b 个 boy 和 g 个 girl ( ...

  9. css 优先级 机制

    多重样式(Multiple Styles):如果外部样式.内部样式和内联样式同时应用于同一个元素,就是使多重样式的情况. 一般情况下,优先级如下: (外部样式)External style sheet ...

  10. sprinvMVC路径拦截

    关于这种路径的拦截: http://localhost:8080/moodleCourse-tool/scorm/23681/mod_scorm/content/1/index_SCORM.html ...