导航:首页 > 编程语言 > java获取二进制

java获取二进制

发布时间:2023-05-14 12:00:40

java 怎么才能读取一个字节里的每一位的2进制信息

这个非常早拿好简单,
使用一个变量
test=1;
然后循环<<<左移8次陆铅,
和你要检查的字节byte进行&操作,
如果结果敏巧是0 那么这一位的2进制就是0,否则就是1。
一楼是培训速成出来的吧,
连2进制都不知道。
杯具。

② 二进制数比如1001 1001 0000 00,java语言我要分别取到每一位的数值该怎么写

可以使岩衫袭用位运算符来实现,比如:
int num = 0b1001_1001_0000_00;
int firstBit = num & 0b1;
int secondBit = (num >> 1) & 0b1;
int thirdBit = (num >粗兄> 2) & 0b1;
int fourthBit = (num >> 3) & 0b1;
// 以此塌圆类推,可以取到每一位的数值

③ java 如何显示 二进制

java显示二进制,主要是使用基本类型的包装类的tobinaryString类型进行转换,代码如下:

packagecom.qiu.lin.he;

importjava.text.ParseException;

publicclassCeshi{
publicstaticvoidmain(String[]args)throwsParseException{

inti=8;
//使用包装类的toBinaryString转换成二进制
System.out.println(Integer.toBinaryString(i));

}
}

运行结果如下

④ JAVA中读取文件(二进制,字符)内容的几种方

JAVA中读取文件内容的方法有很多,比如按字节读取文件内容,按字符读取文件内容,按行读取文件内容,随机读取文件内容等方法,本文就以上方法的具体实现给出代码,需要的可以直接复制使用

public class ReadFromFile {
/**
* 以字节为单位读取文件,常用于读二进制文件,如图片、声音、影像等文件。
*/
public static void readFileByBytes(String fileName) {
File file = new File(fileName);
InputStream in = null;
try {
System.out.println("以字节为单位读取文件内容,一次读一个字节:");
// 一次读一个字节
in = new FileInputStream(file);
int tempbyte;
while ((tempbyte = in.read()) != -1) {
System.out.write(tempbyte);
}
in.close();
} catch (IOException e) {
e.printStackTrace();
return;
}
try {
System.out.println("以字节为单位读取文件内容,一次读多个字节:");
// 一次读多个字节
byte[] tempbytes = new byte[100];
int byteread = 0;
in = new FileInputStream(fileName);
ReadFromFile.showAvailableBytes(in);
// 读入多个字节到字节数组中,byteread为一次读入的字节数
while ((byteread = in.read(tempbytes)) != -1) {
System.out.write(tempbytes, 0, byteread);
}
} catch (Exception e1) {
e1.printStackTrace();
} finally {
if (in != null) {
try {
in.close();
} catch (IOException e1) {
}
}
}
}

/**
* 以字符为单位读取文件,常用于读文本,数字等类型的文件
*/
public static void readFileByChars(String fileName) {
File file = new File(fileName);
Reader reader = null;
try {
System.out.println("以字符为单位读取文件内容,一次读一个字节:");
// 一次读一个字符
reader = new InputStreamReader(new FileInputStream(file));
int tempchar;
while ((tempchar = reader.read()) != -1) {
// 对于windows下,\r\n这两个字符在一起时,表示一个换行。
// 但如果这两个字符分开显示时,会换两次行。
// 因此,屏蔽掉\r,或者屏蔽\n。否则,将会多出很多空行。
if (((char) tempchar) != '\r') {
System.out.print((char) tempchar);
}
}
reader.close();
} catch (Exception e) {
e.printStackTrace();
}
try {
System.out.println("以字符为单位读取文件内容,一次读多个字节:");
// 一次读多个字符
char[] tempchars = new char[30];
int charread = 0;
reader = new InputStreamReader(new FileInputStream(fileName));
// 读入多个字符到字符数组中,charread为一次读取字符数
while ((charread = reader.read(tempchars)) != -1) {
// 同样屏蔽掉\r不显示
if ((charread == tempchars.length)
&& (tempchars[tempchars.length - 1] != '\r')) {
System.out.print(tempchars);
} else {
for (int i = 0; i < charread; i++) {
if (tempchars[i] == '\r') {
continue;
} else {
System.out.print(tempchars[i]);
}
}
}
}

} catch (Exception e1) {
e1.printStackTrace();
} finally {
if (reader != null) {
try {
reader.close();
} catch (IOException e1) {
}
}
}
}

/**
* 以行为单位读取文件,常用于读面向行的格式化文件
*/
public static void readFileByLines(String fileName) {
File file = new File(fileName);
BufferedReader reader = null;
try {
System.out.println("以行为单位读取文件内容,一次读一整行:");
reader = new BufferedReader(new FileReader(file));
String tempString = null;
int line = 1;
// 一次读入一行,直到读入null为文件结束
while ((tempString = reader.readLine()) != null) {
// 显示行号
System.out.println("line " + line + ": " + tempString);
line++;
}
reader.close();
} catch (IOException e) {
e.printStackTrace();
} finally {
if (reader != null) {
try {
reader.close();
} catch (IOException e1) {
}
}
}
}

/**
* 随机读取文件内容
*/
public static void readFileByRandomAccess(String fileName) {
RandomAccessFile randomFile = null;
try {
System.out.println("随机读取一段文件内容:");
// 打开一个随机访问文件流,按只读方式
randomFile = new RandomAccessFile(fileName, "r");
// 文件长度,字节数
long fileLength = randomFile.length();
// 读文件的起始位置
int beginIndex = (fileLength > 4) ? 4 : 0;
// 将读文件的开始位置移到beginIndex位置。
randomFile.seek(beginIndex);
byte[] bytes = new byte[10];
int byteread = 0;
// 一次读10个字节,如果文件内容不足10个字节,则读剩下的字节。
// 将一次读取的字节数赋给byteread
while ((byteread = randomFile.read(bytes)) != -1) {
System.out.write(bytes, 0, byteread);
}
} catch (IOException e) {
e.printStackTrace();
} finally {
if (randomFile != null) {
try {
randomFile.close();
} catch (IOException e1) {
}
}
}
}

/**
* 显示输入流中还剩的字节数
*/
private static void showAvailableBytes(InputStream in) {
try {
System.out.println("当前字节输入流中的字节数为:" + in.available());
} catch (IOException e) {
e.printStackTrace();
}
}

public static void main(String[] args) {
String fileName = "C:/temp/newTemp.txt";
ReadFromFile.readFileByBytes(fileName);
ReadFromFile.readFileByChars(fileName);
ReadFromFile.readFileByLines(fileName);
ReadFromFile.readFileByRandomAccess(fileName);
}
}

⑤ 请教,怎么用JAVA来读取二进制文件并输出文件内容

Java读取二进制文件,以字节为单位进行读取,还可读取图片、音乐文件、视频文件等,
在Java中,提供了四种类来对文件进行操作,分别是InputStream OutputStream Reader Writer ,前两种是对字节流的操作,后两种则是对字符流的操作。
示例代码如下:
public static void readFileByBytes(String fileName){
File file = new File(fileName);
InputStream in = null;
try {
System.out.println("一次读一个");
// 一次读一个字节
in = new FileInputStream(file);
int tempbyte;
while ((tempbyte = in.read()) != -1) {
System.out.write(tempbyte);
}
in.close();
} catch (IOException e) {
e.printStackTrace();
return;
}

⑥ java中如何将十进制数字转化成二进制

如果表达小于2^31-1的正数代码如下:

public void binaryToDecimal(int n){

int t = 0; //用来记录位数

int bin = 0; //用来记录最后的二进制数

int r = 0; //用来存储余数

while(n != 0){

r = n % 2;

n = n / 2;

bin += r * Math().pow(10,t);

t++;

}

System.out.println(bin);

}

使用字符串的拼接(+)来实现大于2^31-1的数,代码如下:

public void binaryToDecimal(int n){

String str = "";

while(n!=0){

str = n%2+str;

n = n/2;

}

System.out.println(str);

}

可以右移后再与0x01进行&运算得到第一位的数字判断判断它的第几位上是0,第几位上是1,代码如下:

class ByteMove

{

public static void main(String[] args)

{

int i = 7;

move(i);

}

static void move(int num){

for(int i= 0;i<6;i++){

System.out.println("第"+(i+1)+"位:" + (num >> i & 0x01));

}

}

}

⑦ 跪求“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:

7的二进制就是111

-7转化二进制的过程:

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

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

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

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

(7)java获取二进制扩展阅读:

c语言中二进制的转换:

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

#include<stdio.h>

#include<stdlib.h>

voidmain()

{

char str[8];

inti=8;

itoa(i,str,2);

printf("%s",str);

}

⑧ java怎么实现读取一个文件,拿到二进制流

Java读取二进制文件,以字节为单位进行读取,还可读取图片、音乐文件、视频文件等,
在Java中,提供了四种类来对文件进行操作,分别是InputStream OutputStream Reader Writer ,前两种是对字节流的操作,后两种则是对字符流的操作。
示例代码如下:
public static void readFileByBytes(String fileName){
File file = new File(fileName);
InputStream in = null;
try {
System.out.println("一次读一个");
// 一次读一个字节
in = new FileInputStream(file);
int tempbyte;
while ((tempbyte = in.read()) != -1) {
System.out.write(tempbyte);
}
in.close();
} catch (IOException e) {
e.printStackTrace();
return;
}

⑨ java 取二进制数值每一位数值

用&操作,比方说00001010,毁旦
要取激余耐倒数第二位的值(1),其值为:明春00001010&00000010
要取倒数第三位的值(0),其值为:00001010&00000100
要取倒数第四位的值(1),其值为:00001010&00001000
依次类推即可。

阅读全文

与java获取二进制相关的资料

热点内容
dbug命令 浏览:347
开逛app如何加好友 浏览:958
ftpdos命令下载文件 浏览:73
华为如何打开语音服务器 浏览:240
python中的idle 浏览:998
五轴联动数控编程 浏览:963
换一台电脑如何远程云服务器 浏览:130
阿里云怎么买云服务器 浏览:662
java提取文字 浏览:95
阿里云服务器同人账号问题 浏览:418
5分钟解压轴题 浏览:339
安卓桌面二级文件夹 浏览:186
eps文档加密 浏览:261
手机怎么做pdf 浏览:162
ug曲面pdf 浏览:279
液化气还是压缩气 浏览:950
阿里云公共ntp服务器地址 浏览:991
金字塔学习机编程 浏览:684
多边形扫描线算法Python 浏览:718
快手app快手粉条在哪里 浏览:256