From e28c84efb3d4a0de4fdbefbaca8946f674850234 Mon Sep 17 00:00:00 2001 From: Ziver Koc Date: Tue, 26 Apr 2016 14:24:16 +0200 Subject: [PATCH] Moved format byte to string function --- src/zutil/ByteUtil.java | 52 ++++++++++++++++++++++++++++++ src/zutil/StringUtil.java | 50 ---------------------------- src/zutil/converter/Converter.java | 4 ++- test/zutil/ByteUtilTest.java | 25 ++++++++++++++ test/zutil/StringUtilTest.java | 25 -------------- 5 files changed, 80 insertions(+), 76 deletions(-) diff --git a/src/zutil/ByteUtil.java b/src/zutil/ByteUtil.java index c934eef..6a1d807 100755 --- a/src/zutil/ByteUtil.java +++ b/src/zutil/ByteUtil.java @@ -24,6 +24,8 @@ package zutil; +import zutil.converter.Converter; + /** * Utility functions for byte primitive type * @@ -124,4 +126,54 @@ public class ByteUtil { throw new IllegalArgumentException("Invalid length argument: "+length+", allowed values: 1 to "+(index+1)+" for index "+index); return (byte) BYTE_MASK[index][length]; } + + /** + * Presents a binary array in HEX and ASCII + * + * @param data The source binary data to format + * @return A multiline String with human readable HEX and ASCII + */ + public static String toFormattedString(byte[] data){ + StringBuffer output = new StringBuffer(); + + //000 XX XX XX XX XX XX XX XX '........' + int maxOffset = (""+data.length).length(); + for(int offset=0; offset SPACES = new ArrayList(); /** diff --git a/src/zutil/converter/Converter.java b/src/zutil/converter/Converter.java index 129ac41..2c855a2 100755 --- a/src/zutil/converter/Converter.java +++ b/src/zutil/converter/Converter.java @@ -73,7 +73,9 @@ public class Converter { */ public static byte[] toBytes(char[] arr){ byte[] ret = new byte[arr.length]; - System.arraycopy(arr, 0, ret, 0, arr.length); + for (int i=0; i