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. C#读写SQL Server数据库图片

    效果图: 下载链接: http://download.csdn.net/detail/u010312811/9492402 1.创建一个Winform窗体,窗体分为“数据上传”和“数据读取”两部分: ...

  2. oracle用户创建及权限设置及表空间

    建立表空间: create tablespace portx_data datafile 'D:\oracle_data\portx.dbf' size 50m autoextend on next ...

  3. 如何限制一个类只在堆上分配和栈上分配(StackOnly HeapOnly)

    [本文链接] http://www.cnblogs.com/hellogiser/p/stackonly-heaponly.html [题目] 如何限制一个类只在堆上分配和栈上分配? [代码]  C+ ...

  4. Java中对List集合内的元素进行顺序、倒序、随机排序的示例代码

    import java.util.Collections; import java.util.LinkedList; import java.util.List; public class Test ...

  5. Redis Sentinel高可用架构

    Redis目前高可用的架构非常多,比如keepalived+redis,redis cluster,twemproxy,codis,这些架构各有优劣,今天暂且不说这些架构,今天主要说说redis se ...

  6. 关于TortoiseSVN的一些知识

    TortoiseSVN的一切命令都是相对于它自己来说的 1.Import,导入,指的是导入SVN的代码库,即Repository. 2.Export,导出,指的是将代码从Repository中导出到你 ...

  7. php处理图片实现

    <?php include("SimpleImage.php");//图片处理类在下面 $url="http://f3.v.veimg.cn/meadincms/1 ...

  8. 怎么查询电脑ip地址

    方法一:本地连接查看法 方法二:命令行法 摘自:http://jingyan.baidu.com/article/870c6fc3d509a1b03fe4be06.html

  9. [Android Pro] Java进阶学习:jar打包详解

    jar文件听说过吗,没有?或者陌生!好,没关系,这就是我们的第一站:打包发布. 为什么会有这个玩意呢,首先,这是jar的全称:JavaTM Archive (JAR) file,是的,就是java存档 ...

  10. July 5th, Week 28th Tuesday, 2016

    If you smile when no one else is around, you really mean it. 独处的时候你的笑容才是发自内心的笑容. Human beings are so ...