String.valueOf和byte的问题

youyiyang 2016-11-18 10:41:46
大家好!

byte数组是:

byte[] WriteBytes = new byte[17];
WriteBytes[0]=0x66;
WriteBytes[1]=0x00;
WriteBytes[2]=0x0B;
WriteBytes[3]=0x00;
WriteBytes[4]=0x10;
WriteBytes[5]=0x00;
WriteBytes[6]=0x10;
WriteBytes[7]=0x11;
WriteBytes[8]=0x22;
WriteBytes[9]=0x33;
WriteBytes[10]=0x44;
WriteBytes[11]=0x55;
WriteBytes[12]=0x66;
WriteBytes[13]=0x77;
WriteBytes[14]=(byte)0x88;
WriteBytes[15]=(byte)0x99;
WriteBytes[16]=(byte)0xFF;

我用下面这句代码开看的时候:


Toast.makeText(Commviewer_ControlActivity.this, i+", "+String.valueOf((int)input[i]), Toast.LENGTH_SHORT).show();

出现这样, 提示:
1,0,
2,11,
3,0,
4,16
。。。
16,-1
怎么0xFF变成了-1?0x0B变成了11,0x10变成了16?
...全文
218 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
youyiyang 2016-11-18
  • 打赏
  • 举报
回复
谢谢!大家!
ink_s 2016-11-18
  • 打赏
  • 举报
回复
字节的最高位是符号位 直接转会有正负
ink_s 2016-11-18
  • 打赏
  • 举报
回复
	  public static String parseByte2HexStr(byte buf[]) {  
	        StringBuffer sb = new StringBuffer();  
	        for (int i = 0; i < buf.length; i++) {  
	                String hex = Integer.toHexString(buf[i] & 0xFF);  
	                if (hex.length() == 1) {  
	                        hex = '0' + hex;  
	                }  
	                sb.append(hex.toUpperCase());  
	        }  
	        return sb.toString();  
	} 
16进制字节转16进制字符串 你转成字符串之后可以用 Integer.valueOf("16进制的字符串",16).toString(); 转10进制字符串 ,你那样直接转回有负数
blanks.w 2016-11-18
  • 打赏
  • 举报
回复
引用 1 楼 q849340003 的回复:
你byte数组本身是16进制, Toast.makeText(Commviewer_ControlActivity.this, i+", "+String.valueOf((int)input[i]), Toast.LENGTH_SHORT).show(); 你这样输出是十进制,所以10进制被转换成了10进制。 十六进制0x0B等于十进制11,十六进制0x10等于十进制16。 并没有错误!
上面打错字了 :你这样输出是十进制,所以10进制被转换成了10进制。应该是:你这样输出是十进制,所以16进制被转换成了10进制。 特此修正
blanks.w 2016-11-18
  • 打赏
  • 举报
回复
你byte数组本身是16进制, Toast.makeText(Commviewer_ControlActivity.this, i+", "+String.valueOf((int)input[i]), Toast.LENGTH_SHORT).show(); 你这样输出是十进制,所以10进制被转换成了10进制。 十六进制0x0B等于十进制11,十六进制0x10等于十进制16。 并没有错误!
渭河流域位于中国黄河中游地区,是黄河的重要一级支流流域,地理范围主要涵盖陕西省中部、甘肃东部和宁夏部分地区。该流域自西向东延伸,总长约818公里,流域面积广阔,人口密集,是我国重要的农业与工业带,同时也是西北地区经济、文化与生态发展的核心区域之一。渭河流域水系发育完善,除干流外,还包括泾河、洛河、沣河、滈河等多条支流,构成了完整的河网体系,对黄河流域的水资源调配与生态安全具有重要意义。 本数据集提供了渭河流域矢量边界及河流分布的标准化shp文件,包含以下文件: (1)可编辑MXD文件:可直接在 ArcGIS 中打开,用户可进行二次编辑、专题制图及空间分析,方便科研、教学与管理应用。 (2)标准SHP文件:包含渭河流域边界矢量数据以及干流与主要支流的矢量化河流线条,属性表中附带河流名称、流域隶属等信息,便于查询与叠加分析。 (3)标准成图TIF文件:输出高清、规范的地图成果,能够直观展示渭河流域整体边界与内部河流分布格局,可用于汇报、展示与出版。 本资源可广泛应用于流域水资源管理、生态环境保护、土地利用研究、洪涝灾害评估等领域,同时也能为流域综合治理、生态修复规划、水文模拟与地理建模提供基础支撑。通过与其他数据(如DEM、土地覆盖、气象数据)叠加使用,还能开展更加深入的多源数据分析,为黄河流域高质量发展与区域生态安全提供科学依据。

80,471

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧