关于byte[]与String的问题
ByteArrayOutputStream baos=new ByteArrayOutputStream();
DataOutputStream dos=new DataOutputStream(baos);
dos.writeByte(2);
dos.writeByte(3);
dos.writeByte(0x83);
String data=baos.toString();
byte[] buf=baos.toByteArray();
ByteArrayInputStream bais1=new ByteArrayInputStream(data.getBytes());
DataInputStream dis1=new DataInputStream(bais1);
System.out.println(dis1.readByte());
System.out.println(dis1.readByte());
System.out.println(dis1.readUnsignedByte());
System.out.println("------------------------------------");
ByteArrayInputStream bais2=new ByteArrayInputStream(buf);
DataInputStream dis2=new DataInputStream(bais2);
System.out.println(dis2.readByte());
System.out.println(dis2.readByte());
System.out.println(dis2.readUnsignedByte());
打印结果:
2
3
239
------------------------------------
2
3
131
问题:为什么这2个打印结果不一样呢?baos.toString().getBytes()和baos.toByteArray()难道不一样?
请教各位大虾们。。。
...全文
相关推荐
String 与byte[] 间的转换
更好的解决了String类型与byte类型的转换,防止出现乱码问题
Android byte[] 和 String互相转换
这个工程是简单将String和byte[]互相转换的Demo,有需要的可以下载
Python3中内置类型bytes和str用法及byte和string之间各种编码转换 问题
主要介绍了Python3中内置类型bytes和str用法及byte和string之间各种编码转换问题,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
java中String_十六进制String_byte[]之间相互转换
java中String_十六进制String_byte[]之间相互转换
Base64与byte[]相互转换
Base64与byte[]相互转换 将base64转换为byte[] 转byet[]换为base64 并在base64中去掉换行


Java SE
