Initial version -- added millennium read funcionality
This commit is contained in:
@@ -0,0 +1,60 @@
|
||||
package com.google.android.gms.common.util;
|
||||
|
||||
import com.google.errorprone.annotations.ResultIgnorabilityUnspecified;
|
||||
import kotlin.UByte;
|
||||
|
||||
/* JADX INFO: compiled from: com.google.android.gms:play-services-basement@@18.3.0 */
|
||||
/* JADX INFO: loaded from: classes2.dex */
|
||||
public final class HexDumpUtils {
|
||||
@ResultIgnorabilityUnspecified
|
||||
public static String dump(byte[] bArr, int i, int i2, boolean z) {
|
||||
int length;
|
||||
if (bArr == null || (length = bArr.length) == 0 || i < 0 || i2 <= 0 || i + i2 > length) {
|
||||
return null;
|
||||
}
|
||||
StringBuilder sb = new StringBuilder((z ? 75 : 57) * ((i2 + 15) / 16));
|
||||
int i3 = i2;
|
||||
int i4 = 0;
|
||||
int i5 = 0;
|
||||
while (i3 > 0) {
|
||||
if (i4 == 0) {
|
||||
if (i2 < 65536) {
|
||||
sb.append(String.format("%04X:", Integer.valueOf(i)));
|
||||
} else {
|
||||
sb.append(String.format("%08X:", Integer.valueOf(i)));
|
||||
}
|
||||
i5 = i;
|
||||
} else if (i4 == 8) {
|
||||
sb.append(" -");
|
||||
}
|
||||
sb.append(String.format(" %02X", Integer.valueOf(bArr[i] & UByte.MAX_VALUE)));
|
||||
i3--;
|
||||
i4++;
|
||||
if (z && (i4 == 16 || i3 == 0)) {
|
||||
int i6 = 16 - i4;
|
||||
if (i6 > 0) {
|
||||
for (int i7 = 0; i7 < i6; i7++) {
|
||||
sb.append(" ");
|
||||
}
|
||||
}
|
||||
if (i6 >= 8) {
|
||||
sb.append(" ");
|
||||
}
|
||||
sb.append(" ");
|
||||
for (int i8 = 0; i8 < i4; i8++) {
|
||||
char c = (char) bArr[i5 + i8];
|
||||
if (c < ' ' || c > '~') {
|
||||
c = '.';
|
||||
}
|
||||
sb.append(c);
|
||||
}
|
||||
}
|
||||
if (i4 == 16 || i3 == 0) {
|
||||
sb.append('\n');
|
||||
i4 = 0;
|
||||
}
|
||||
i++;
|
||||
}
|
||||
return sb.toString();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user