【发布时间】:2016-10-13 09:23:59
【问题描述】:
嗨,我在 SO 中看到了许多将整数值转换为无符号字节数组的链接。但我无法弄清楚。我的转换如下
//在安卓中
int checksum=104396;
byte[] byteArray = GetBytesInt(checksum);
public static byte[] GetBytesInt(int value) {
byte[] bytes = new byte[4];
bytes[0] = (byte) (value >> 24);
bytes[1] = (byte) (value >> 16);
bytes[2] = (byte) (value >> 8);
bytes[3] = (byte) (value);
return bytes;
}
在安卓中输出
[0,1,-105,-52]
//在c#中
uint CheckSum=104396;
byte[] byteArray=BitConverter.GetBytes(CheckSum)
where BitConverter is System method
c# 输出
[204,151,1,0]
我如何在 java 或 android 中获得此输出。我检查 java 8 和 Guava 是否返回相同的内容。
请帮我写一些代码
【问题讨论】:
-
Output in android。您没有发布输出的代码。 -
我在代码下面提到了操作字节值
-
没有。我当然已经看到了输出。但我要求您提供用于生成输出的代码。你是怎么打印出来的?
-
你看到结果ok了吗? Java 和 C# 产生相同的结果。将 256 添加到 Android 中的负值。只是顺序不同。打印时应将每个字节值视为无符号。
标签: java c# android arrays bitconverter