导航:首页 > 编程语言 > javabyte转二进制

javabyte转二进制

发布时间:2022-05-12 22:08:23

java byte 二进制

byte a = 1111; // 这样定义,这个 1111 到底是二进制,还是10进制,还是 X 进制,系统是不知道的。。
在这里,1111 默认被当作 10 进制。。
Java 不支持显式输入二进制,默认为 10 进制,0 开头为8进制,比如 01111,0x开头为16 进制,比如 0x11。。
byte 数据类型所表示的范围为 -128~127,已经超出范围了。。

Ⅱ java里怎样把文件转换成二进制

转换文件成为二进制数据并保存的Java代码:

取出数据并还原文件到本地的java代码:

[java]view plain//读取数据库二进制文件

publicvoidreaderJpg()throwsSQLException

{

connection=connectionManager.getconn();//自己连接自己的数据库

StringsqlString="selectimagesfromsave_imagewhereid=4";//从数据库中读出要还原文件的二进制码,这里我读的是自己的数据库id为4的文件

Filefile=newFile("E:\1.jpg");//本地生成的文件

if(!file.exists())

{

try{

file.createNewFile();

}catch(Exceptione){

e.printStackTrace();

}

}

try{

byte[]Buffer=newbyte[4096*5];

statement=connection.prepareStatement(sqlString);

resultSet=statement.executeQuery();

if(resultSet.next())

{

FileOutputStreamoutputStream=newFileOutputStream(file);

InputStreamiStream=resultSet.getBinaryStream("images");//去字段用getBinaryStream()

intsize=0;

while((size=iStream.read(Buffer))!=-1)

{

System.out.println(size);

outputStream.write(Buffer,0,size);

}

}

}catch(Exceptione){

e.printStackTrace();

}

}

Ⅲ java如何将BYTE型数转化为八位二进制,及如何将八位二进制数转化为Byte型的。

使用八进制表示整数,只要在十进制数前加一个0就可以了,比如12的八进制就i=012,这样在输出时System.out.println("i=" +i)就是i=10

Ⅳ JAVA中byte类型的介绍。 谢谢

1、在Java中,byte类型的数据是8位带符号的二进制数。最高位表示正负,0为正,1为负。

2、java byte是做为最小的数字来处理的,因此它的值域被定义为-128~127,也就是signed byte。

3、正数的最高位都是 0 ,正数的值就是二进制表示的值。

4、负数的最高位都是 1 ,负数的值是 取反后加一 然后加个负号得到的值。

(4)javabyte转二进制扩展阅读

1、java基本数据类型

JAVA中一共有八种基本数据类型,分别是byte、short、int、long、float、double、char、boolean。

2、java各数据类型取值范围

byte,整型,1个字节,范围:-2的7次方 ~ 2的7次方-1;

short,整型,2个字节,范围:-2的15次方 ~ 2的15次方-1;

int,整型,4个字节,范围:-2的31次方 ~ 2的31次方-1;

long,整型,8个字节,范围:-2的63次方 ~ 2的63次方-1;

float,浮点型,4个字节,范围:3.402823e+38 ~ 1.401298e-45;

double,浮点型,8个字节,范围:1.797693e+308~ 4.9000000e-324;

char,文本型,2个字节,范围:0~2的16次方-1;

boolean,布尔型,1个字节,范围:true/false;

参考资料

网络-java字符型

Ⅳ 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:

可以看到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的二进制表示:(这个二进制的后八位就是line1,可以直接打印的话Java把其当做了负数
-2)
Java中255的二进制表示:(24个‘0’,8个‘1’)
做与后变为:
这样做与后表示的数就是正数了
254。可以想一下,假设每一行用2个字节表示一个无符号数,那么可以把每一行变成正整数用方法2怎么做?
2.Java中的>>和>>>
'>>'
算术右移,向右移左边补符号位
'>>>'
逻辑右移,向右移左边补0
System.out.println("Java二进制-7: "+Integer.toBinaryString(-7));
System.out.println("-7>>2: "+Integer.toBinaryString(-7>>2));
System.out.println("-7>>>2: "+Integer.toBinaryString(-7>>>2));输出:
Java二进制-7:
-7>>2:
-7>>>2: //正常应该这样(00)左边的两个0不显示

Ⅵ Java 十进制转二进制!要求如下: Byte Short Int Long 跟据不同的bits数转二进制!如:50转"00110010"

int i=50;
System.out.println(Integer.toBinaryString(i));

Ⅶ java怎么把一个byte变量按二进制输出

/**
* 将byte转换为一个长度为8的byte数组,数组每个值代表bit
*/
public static byte[] getBooleanArray(byte b) {
byte[] array = new byte[8];
for (int i = 7; i >= 0; i--) {
array[i] = (byte)(b & 1);
b = (byte) (b >> 1);
}
return array;
}
/**
* 把byte转为字符串的bit
*/
public static String byteToBit(byte b) {
return ""
+ (byte) ((b >> 7) & 0x1) + (byte) ((b >> 6) & 0x1)
+ (byte) ((b >> 5) & 0x1) + (byte) ((b >> 4) & 0x1)
+ (byte) ((b >> 3) & 0x1) + (byte) ((b >> 2) & 0x1)
+ (byte) ((b >> 1) & 0x1) + (byte) ((b >> 0) & 0x1);
}

使用:
byte b = 0x35; // 0011 0101
// 输出 [0, 0, 1, 1, 0, 1, 0, 1]
System.out.println(Arrays.toString(getBooleanArray(b)));
// 输出 00110101
System.out.println(byteToBit(b));
// JDK自带的方法,会忽略前面的 0
System.out.println(Integer.toBinaryString(0x35));

Ⅷ java怎样把字符串转化为二进制形式

importjava.io.UnsupportedEncodingException;
importjava.util.Arrays;

/*
*String(byte[]bytes,StringcharsetName):通过指定的字符集解码字节数组
*byte[]getBytes(StringcharsetName):使用指定的字符集合把字符串编码为字节数组
*
*编码:把看得懂的变成看不懂的
*String--byte[]
*
*解码:把看不懂的变成看得懂的
*byte[]--String
*
*举例:谍战片(发电报,接电报)
*
*码表:小本子
* 字符 数值
*
*要发送一段文字:
* 今天晚上在老地方见
*
* 发送端:今--数值--二进制--发出去
* 接收端:接收--二进制--十进制--数值--字符--今
*
* 今天晚上在老地方见
*
*编码问题简单,只要编码解码的格式是一致的。
*/
publicclassStringDemo{
publicstaticvoidmain(String[]args){
Strings="你好";

//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
Stringss=newString(bys);//你好
//Stringss=newString(bys,"GBK");//你好
//Stringss=newString(bys,"UTF-8");//???
System.out.println(ss);
}
}

Ⅸ 在java中怎么把字节数组转换成二进制字符串

可以使用Integer类的toBinaryString方法,例如:

bytea=0x45;
StringbinStr=Integer.toBinaryString(a).

API中toBinaryString的解释:

toBinaryString

public static String toBinaryString(inti)

以二进制(基数 2)无符号整数形式返回一个整数参数的字符串表示形式。

如果参数为负,该无符号整数值为参数加上 232;否则等于该参数。将该值转换为二进制(基数 2)形式的无前导0的 ASCII 数字字符串。如果无符号数的大小为零,则用一个零字符'0'(’u0030’) 表示它;否则,无符号数大小的表示形式中的第一个字符将不是零字符。字符'0'('u0030') 和'1'('u0031') 被用作二进制数字。


参数:

i- 要转换为字符串的整数。

返回:

用二进制(基数 2)参数表示的无符号整数值的字符串表示形式。

从以下版本开始:

JDK1.0.2

阅读全文

与javabyte转二进制相关的资料

热点内容
管家婆辉煌2加密狗挪到另一台电脑 浏览:760
摩托车在哪里app看考题 浏览:356
苹果5app在哪里设置 浏览:737
如何查看服务器的磁盘使用 浏览:165
python蒙特卡洛模型投点图 浏览:330
安卓手机属于什么接口 浏览:742
微信群推广网站源码 浏览:764
九江离鹰潭源码 浏览:719
python可以当作函数的返回值 浏览:422
地铁逃生体验服怎么进入安卓 浏览:833
齐鲁工惠app的中奖记录在哪里 浏览:759
linuxkill命令详解 浏览:103
dhcp服务器动态分配地址 浏览:265
门禁卡加密了能破解吗 浏览:215
在哪里下载百度网盘app 浏览:917
服务器要升级什么意思 浏览:831
银行还房贷解压方法 浏览:702
服务器主机办公如何提速 浏览:920
cad打印为pdf 浏览:418
卖手表的app哪里可以卖 浏览:55