JAVA byte到char的转换
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JAVA byte到char的转换相关的知识,希望对你有一定的参考价值。
大家好,首先谢谢大家看到这里。
我正在尝试用JAVA破解一个C++编写的文件。
在C+中,貌似CHAR是占1个BYTE。
而在JAVA中一个CHAR是2个字符。
我必须读取一个BYTE,但是这个BYTE的取值只能到128,而CHAR是256.
请问有什么办法能够帮助我实现1个BYTE到CHAR的转换
希望高手不吝赐教,能否给出源代码呢
刚刚突然想起来,JAVA中byte的取值为-127到128,而C中unsigned CHAR 貌似0-255,所以他们直接一定可以转化的。那么该怎么转呢。我不知道我说的对不对。反正我只想使得 -127-128的数目对应0-255的数目 各位达人有什么办法吗
byte a = (byte)'b';
这个是成立的 char型就是一个单字符 直接强制类型转换就可以完成转换成1个字节的byte。 因为char的定义就是1字节。
所以互换方式就是强制转换
byte a = (byte)'c';
char b = (char)a;
System.out.println(b);
char在java中可以直接取值来表示
char b = (char)100;
System.out.println(b);
结果是d 参考技术A 度一个byte为b
使用 b & 0xFF就可以将-127~128对应到0~255了。 参考技术B String (byte [] bytes, String encoding) ;
用这个转成字符串就行了 参考技术C 用CHAR来完成即可
我猜想楼主是想从文件中读取C++存储的数据是吧.
如果是这样的话,使用Char没有问题.
用Byte理论上也是可以的.不过可能要复杂一些本回答被提问者采纳
以上是关于JAVA byte到char的转换的主要内容,如果未能解决你的问题,请参考以下文章
java 变量数据类型转换?byte, short, char, int, long, float, double
Java 中byte 与 char 的相互转换 Java基础 但是很重要
JAVA 与 C++ 数据类型转换 byte unsigned char