「java二进制转汉字」汉字的二进制

博主:adminadmin 2022-12-20 02:21:07 78

本篇文章给大家谈谈java二进制转汉字,以及汉字的二进制对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

跪求“java中二进制怎么表示”

java中二进制的表示:

1、Java中定义两个数,然后分别打印出它们的二进制表示(例如7和-7):

System.out.println("Java二进制7: "+Integer.toBinaryString(7));

System.out.println("Java二进制-7: "+Integer.toBinaryString(-7));

输出:

Java二进制7: 111

Java二进制-7: 11111111111111111111111111111001

7的二进制就是111

-7转化二进制的过程:

(1)把-7转化成7,二进制是 111

(2)Java中对于不满32位的int二进制自动补齐,所以变成了 (29个0)111

(3)然后取反  (29个1)000

(4)然后加1 (29个1)001

扩展资料:

c语言中二进制的转换:

用函数转换itoa(值,数组名,进制)

#includestdio.h

#includestdlib.h

void main()

{

char str[8];

int i=8;

itoa(i,str,2);

printf("%s",str);

}

参考资料:

java二进制——百度百科

二进制文件与文本文件相互转化 java实现~

public class WriteTextFileExample {

public static void main(String[] args ) {

try {

FileOutputStream out = new BufferedWriter(

new OutputStreamWriter(

new FileOutputStream(fileName2)));

DataInputStream in=new DataInputStream(

new BufferedInputStream(

new FileInputStream(fileName)));

int l=in.readInt(); //你必须要知道你提取的2进制文件里的数据对应的是什么类型的,数据量有多少

/*

System.out.println(dis.available());

System.out.println(dis.readBoolean());

char c=(char)dis.readChar();

System.out.println(c);

System.out.println(dis.readDouble());

System.out.println(dis.readFloat());

System.out.println(dis.readInt());

System.out.println(dis.readLong());

System.out.println(dis.readShort());

System.out.println(dis.readUTF());

*/

//读取的时候一定要一一对应,不然取出来也不能用

out.write(String.valueOf(l));

//请根据你的二进制文件自行设定执行次数

}

catch (FileNotFoundException fnfe) {

fnfe.printStackTrace();

}

catch (IOException ioe) {

ioe.printStackTrace();

}

finally {

try {

if (bw != null)

bw.close();

if (fos != null)

fos.close();

}

catch (IOException ie) {

}

}

}

}

参考:

java,关于二进制和十六进制的数据转换

java进制转换

java中进行二进制,八进制,十六进制,十进制间进行相互转换

十进制转成十六进制:

Integer.toHexString(int i)

十进制转成八进制

Integer.toOctalString(int i)

十进制转成二进制

Integer.toBinaryString(int i)

十六进制转成十进制

Integer.valueOf("FFFF",16).toString()

八进制转成十进制

Integer.valueOf("876",8).toString()

二进制转十进制

Integer.valueOf("0101",2).toString()

java怎么将二进制转化成字符串

import java.io.UnsupportedEncodingException;

import java.util.Arrays;

/*

* String(byte[] bytes, String charsetName):通过指定的字符集解码字节数组

* byte[] getBytes(String charsetName):使用指定的字符集合把字符串编码为字节数组

*

* 编码:把看得懂的变成看不懂的

* String -- byte[]

*

* 解码:把看不懂的变成看得懂的

* byte[] -- String

*

* 举例:谍战片(发电报,接电报)

*

* 码表:小本子

* 字符 数值

*

* 要发送一段文字:

* 今天晚上在老地方见

*

* 发送端:今 -- 数值 -- 二进制 -- 发出去

* 接收端:接收 -- 二进制 -- 十进制 -- 数值 -- 字符 -- 今

*

* 今天晚上在老地方见

*

* 编码问题简单,只要编码解码的格式是一致的。

*/

public class StringDemo {

public static void main(String[] args) throws UnsupportedEncodingException {

String s = "你好";

// String -- byte[]

byte[] bys = s.getBytes(); // [-60, -29, -70, -61]

// byte[] bys = s.getBytes("GBK");// [-60, -29, -70, -61]

// byte[] bys = s.getBytes("UTF-8");// [-28, -67, -96, -27, -91, -67]

System.out.println(Arrays.toString(bys));

// byte[] -- String

String ss = new String(bys); // 你好

// String ss = new String(bys, "GBK"); // 你好

// String ss = new String(bys, "UTF-8"); // ???

System.out.println(ss);

}

}

java中怎样把二进制数转换成对应的字符串

查API呀 String 里面有方法:构造方法摘要String()

初始化一个新创建的 String 对象,使其表示一个空字符序列。String(byte[] bytes)

通过使用平台的默认字符集解码指定的 byte 数组,构造一个新的 String。String(byte[] bytes, Charset charset)

通过使用指定的 charset 解码指定的 byte 数组,构造一个新的 String。String(byte[] ascii, int hibyte)

已过时。 该方法无法将字节正确地转换为字符。从 JDK 1.1 开始,完成该转换的首选方法是使用带有 Charset、字符集名称,或使用平台默认字符集的 String 构造方法。String(byte[] bytes, int offset, int length)

通过使用平台的默认字符集解码指定的 byte 子数组,构造一个新的 String。String(byte[] bytes, int offset, int length, Charset charset)

通过使用指定的 charset 解码指定的 byte 子数组,构造一个新的 String。String(byte[] ascii, int hibyte, int offset, int count)

已过时。 该方法无法将字节正确地转换为字符。从 JDK 1.1 开始,完成该转换的首选方法是使用带有 Charset、字符集名称,或使用平台默认字符集的 String 构造方法。String(byte[] bytes, int offset, int length, String charsetName)

通过使用指定的字符集解码指定的 byte 子数组,构造一个新的 String。String(byte[] bytes, String charsetName)

通过使用指定的 charset 解码指定的 byte 数组,构造一个新的 String。String(char[] value)

分配一个新的 String,使其表示字符数组参数中当前包含的字符序列。String(char[] value, int offset, int count)

分配一个新的 String,它包含取自字符数组参数一个子数组的字符。String(int[] codePoints, int offset, int count)

分配一个新的 String,它包含 Unicode 代码点数组参数一个子数组的字符。String(String original)

初始化一个新创建的 String 对象,使其表示一个与参数相同的字符序列;换句话说,新创建的字符串是该参数字符串的副本。String(StringBuffer buffer)

分配一个新的字符串,它包含字符串缓冲区参数中当前包含的字符序列。String(StringBuilder builder)

分配一个新的字符串,它包含字符串生成器参数中当前包含的字符序列。

java中二进制怎么表示?

二进制是计算技术中广泛采用的一种数制。二进制数据是用0和1两个数码来表示的数。它的基数为2,进位规则是“逢二进一”,借位规则是“借一当二”,由18世纪德国数理哲学大师莱布尼兹发现。当前的计算机系统使用的基本上是二进制系统,数据在计算机中主要是以补码的形式存储的。计算机中的二进制则是一个非常微小的开关,用“开”来表示1,“关”来表示0。

1、Java中定义两个数,然后分别打印出它们的二进制表示:

System.out.println("Java二进制7: "+Integer.toBinaryString(7));

System.out.println("Java二进制-7: "+Integer.toBinaryString(-7));

输出:

Java二进制7:

111

Java二进制-7:

11111111111111111111111111111001

可以看到Java中对于数的表示属于有符号的,那么这个是怎么来的?

7好办,直接是111

-7转化二进制的过程:

(1)把-7转化成7,二进制是

111

(2)Java中对于不满32位的int二进制自动补齐,所以变成了

(29个0)111

(3)然后取反

(29个1)000

(4)然后加1

(29个1)001

这就是-7的整个转化过程,那么现在有一个问题,如果有一个文本文件,每一行有八位二进制,表示的范围是(0~255),也就是用一个字节表示的无符号整数,如果现在要把这些二进制转化成整数存到文件里应该怎么做?

文件:

line1

11111110

(254)

line2

00000000

(0)

假设用Java读进了第一行,那么直接打印出来的值是-2,不符合要求,这时让-2变254有两种办法:

(1)用Java自带的方法,Byte.toUnsignedInt((byte)

-2)(ps.-2的二进制表示就是line1),这样打印出来的就是254了

System.out.println(Byte.toUnsignedInt((byte) -2));

输出:254

第二种方法的原理:

Java中-2的二进制表示:11111111111111111111111111111110(这个二进制的后八位就是line1,可以直接打印的话Java把其当做了负数

-2)

Java中255的二进制表示:00000000000000000000000011111111(24个‘0’,8个‘1’)

做与后变为:00000000000000000000000011111110

这样做与后表示的数就是正数了

254。可以想一下,假设每一行用2个字节表示一个无符号数,那么可以把每一行变成正整数用方法2怎么做?

2.Java中的和

''

算术右移,向右移左边补符号位

''

逻辑右移,向右移左边补0

System.out.println("Java二进制-7: "+Integer.toBinaryString(-7));

System.out.println("-72: "+Integer.toBinaryString(-72));

System.out.println("-72: "+Integer.toBinaryString(-72));输出:

Java二进制-7: 11111111111111111111111111111001

-72: 11111111111111111111111111111110

-72: 111111111111111111111111111110 //正常应该这样(00)111111111111111111111111111110左边的两个0不显示

java二进制转汉字的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于汉字的二进制、java二进制转汉字的信息别忘了在本站进行查找喔。

The End

发布于:2022-12-20,除非注明,否则均为首码项目网原创文章,转载请注明出处。